2014-05-12 3 views
-2

버튼이 있습니다. 그것을 클릭하면 컨트롤러가 호출되고 true 또는 false를 반환해야하는 함수가 호출되어야합니다.UI에 거짓 값 true를 반환합니다.

UI에서 어떻게 나타내야합니까?

e.e. 함수가 true를 반환하면 UI에 "Success"라고 써야합니다. false를 반환하면 UI에 "Failed"라고 쓰고 싶습니다.

어떻게하면됩니까?

[HttpPost] 
public ViewResult DoSomething() 
{ 
    //Call to method 
} 

@using (Html.BeginForm("DoSomething", "Controller")) { 
} 
+0

질문이 _ 컨트롤러에서 값을 전달하는 방법 _ 인 경우, MVC 자습서를 읽으십시오. 이는 요구 사항에 따라 모델, ViewBag, ViewData, TempData 또는 Session을 사용하여 수행 할 수 있습니다. [ViewBag, ViewData 및 TempData] (http://stackoverflow.com/questions/7993263/viewbag-viewdata-and-tempdata)도 참조하십시오. – CodeCaster

+0

컨트롤러 메소드를 호출하고 부울 값을 반환하는 Ajax 요청이 필요하다면 자바 스크립트에서 콜백의 텍스트 필드를 편집 할 수 있습니다. –

답변

1

가장 기본적인 방법은 ViewBag을 사용하는 것입니다. 그래서 행동에 당신은 같은 것을 할 수 있습니다

ViewBag.Success = callToMethod(); 

하고 작업의 관점에서,이 같은 것을 얻을 수 있습니다 물론 다른 방법으로 있습니다

@if (ViewBag.Success != null && (bool)ViewBag.Success) 
{ 
    // render something 
} 
else 
{ 
    // render something 
} 

. 이미 뷰에 대한 뷰 모델이 있고 뷰 모델에 부울 플래그를 추가하기 만하면됩니다. 그런 식으로 수행 한 경우 ViewBag에서 벗어나는 대신 Model.Success 대신 액세스 할 수 있습니다 (이 경우 @model 유형에 따라 다름). 물론 뷰 모델에 추가 한 경우 작업에서 뷰 모델의 인스턴스에 메서드 결과를 설정해야합니다.

+0

@ CodeCaster, 완벽한 참조 질문을 찾은 경우 중복으로 투표를 종료해야합니다. 당신은 OP가 당신 생각을 * 상식이라고 생각 했어야한다고 생각했기 때문에 그것을 닫으 려구요. 종종 우리는 우리가 교만하고 고심하는 것을 우리가 깨닫지 못하고 우리가 어디에서 왔는지 잊어 버리게됩니다. 종종 우리가 수행하고 싶은 작업이 있고 ** 어디에서 시작할 지 알지도 못하고 ** 무엇을 검색해야 할지도 모릅니다. ** 그러나 슬프게도, 우리는 잊어 버렸습니다. –

+0

내가 잊어 버린 유일한 사실은 논평이 토론을위한 것이 아니란 점이다. 나는 "당신이 묻고있는 것을 분명히하지 못했습니다."_ 그리고 _ 주석을 사용하여 설명을 요청했습니다. 해당 의견에 답변이 없으면 질문에 적절하게 답변 할 수 없습니다. 중복 투표는 사람들이 항상 공통점을 보지 못하고 그에 따라 투표하지 않기 때문에 효과가 없습니다. OP를 도울 수는 있지만 사이트를 돕지는 않습니다. [이것에 대한 내 입장을 이해하기 위해 이것을 읽으십시오] (http://meta.stackoverflow.com/questions/254341/a-car-with-square-wheels/254362#254362). – CodeCaster

+1

@CodeCaster : 나는 내 입장을 바꿨으며 지금은 네 구석에 서있다. 내가 믿는 다른 이유에도 불구하고. 평판은 나에게 아무런 의미가 없다는 것을 명심하십시오. 나는 이제까지 상관 없어도 충분히 벌었습니다. –

관련 문제