2010-01-04 2 views
0

안녕하세요이 게시물에서 같은 문제에 봉착 :Ajax.BeginForm 쇼 loadingElementId

Ajax.BeginForm not hiding loading element when onBegin fails하지만 나는 아직 그것을 해결하는 방법을 발견하지 않았습니다.

기본적으로 AJax.BeginForm을 OnBegin 함수와 함께 사용하고이 함수가 false를 반환하면로드 요소 ID가 여전히 표시되고 다시 숨겨지지 않습니다.

내가 그것을 테스트하고있어 코드입니다 :

function isValid() { 
    return false 
} 


<% using (Ajax.BeginForm("LogIn", "Security", new { ReturnUrl = Request["ReturnUrl"] } 
     , new AjaxOptions { UpdateTargetId = "resultErrors", OnBegin = "isValid", LoadingElementId = "updatePanel" })) 
{ %> 

답변

1

내가 정확히 솔루션을 기억하지 않는다, 나는 내 자신의 및 일반 HTML로 쓰기 위해 더 나은 것을 오래 전에 결정 Ajax 호출을 처리한다.

여기에 코드를 게시하면 JQuery로 코드를 작성하는 방법을 보여줄 수 있습니다. 이 솔루션을 고수 할 경우

지금 당신은 여전히 ​​같은 수동 요소를 숨길 JQuery와 사용할 수 있습니다

<% using (Ajax.BeginForm("LogIn", "Security", new { ReturnUrl = Request["ReturnUrl"] } 
    , new AjaxOptions { UpdateTargetId = "resultErrors", OnBegin = "isValid", LoadingElementId = "updatePanel" })) 
{ %> 

<script type="text/javascript" language="javascript" src="<%=Url.Content("~/Scripts/jquery-1.4.1.js") %>">//Jquery reference 
</script> 

<script type="text/javascript" language="javascript"> 
    function isValid() { 
     if (true) // In case i whant to return true 
     { 
      return true; 
     } 
     else // I whant to return false 
     { 
      $('#updatePanel').hide(); // Manually hide the LoadingElementId 
      return false; 
     } 
    }  
</script> 
+0

우리가 (obj2보다 OBJ1)이 방법 즉 IsValid를 매개 변수를 전달할 수 있습니다? – Yasser

관련 문제