2010-11-08 2 views
0

У меня есть форма, как что:Проблемы с входом и представить JQuery проверкой

<script type="text/javascript"> 
    function checkpas() 
    { 
     var newp = $('#NewPassword').val(); 
     var newpp = $('#RepeatedNewPassword').val(); 

     if (newp != newpp) 
     { 
      return false; 
     } 
    } 
    </script> 

<% using (Html.BeginForm()) {%> 
    <%: Html.ValidationSummary(true) %> 
     ... 
    <input type="submit" id="sub_btn" value="Edit" onclick="checkpas();" /> 
<% } %> 

но представить вход всегда вызывает форму представить, даже если я вернусь ложен в коде JS. Зачем ?

ответ

1

Я считаю, что вам нужно, чтобы вернуть результат функции: вместо:

<input type="submit" id="sub_btn" value="Edit" onclick="checkpas();" /> 

использование:

<input type="submit" id="sub_btn" value="Edit" onclick="return checkpas();" /> 

также в функции добавить else return true;

2

вам нужно запустить onsubmit() не OnClick()

Как это:

<script type="text/javascript"> 
    $("#yourformID").submit(function (evt) 
    { 
     var newp = $('#NewPassword').val(); 
     var newpp = $('#RepeatedNewPassword').val(); 

     if (newp != newpp) 
     { 
      return false; 
     } 
    } 
    </script> 

Примечание присвоить идентификатор формы, делая это в ASPX. вот ссылка http://msdn.microsoft.com/en-us/library/dd492714.aspx

<% using (Html.BeginForm("ActionName", "ControllerName", Method, new {id="myFormID")})) {%> 
Смежные вопросы