2010-04-26 62 views
1

我有一個顯示爲對話框的局部視圖。我需要在我的控制器中進行驗證並在對話框中返回錯誤消息。我怎樣才能做到這一點?我在控制器代碼如何將錯誤消息輸出到mvc中的jqueryUI對話框?

部分如下:

if (!String.Equals(newPassword, confirmPassword, StringComparison.Ordinal)) 
     { 
      ModelState.AddModelError("Confirm Password", "The new password and confirmation password do not match."); 
      return PartialView("PasswordDetails"); 
     } 

局部視圖如下:

<% using (Html.BeginForm("PasswordDetails", "User")) 

{%>

  <td>New password</td><td><%=Html.Password("newPassword")%><input type="hidden" id="ID" name="ID" /></td> 
      </tr> 
      <tr> 
      <td>Confirm new password</td> <td><%=Html.Password("confirmPassword")%><%= Html.ValidationMessage("errors")%> 
      </td> 
      </tr> 
      </table> 
     <div class="rightalign" > 
       <input type="submit" value="Accept" /> <input type="button" value="Cancel" id="CloseDialog"/> 
     </div> 

回答

0

我認爲你最好t是在這裏使用一個內聯框架。否則,POST將從父框架提交。

您也可以使用jQuery來形成請求,將其發送到服務器,然後根據響應進行更新。東西沿線...

$('input.submit').click(function(event){ 
    event.preventDefault(); 

    // form request 
    $.ajax({ /* ... */ }); 
}); 
+0

我需要發送錯誤消息到模態。我怎樣才能做到這一點? – learning 2010-04-27 04:56:04

+0

如果您正在使用內聯框架,則錯誤消息響應應填入內嵌框架內。所以只要確保iframe在對話框中。如果你正在使用AJAX調用,你應該能夠簡單地用jQuery更新對話框div:$('#mydiv')。html(errorMessage) – Krisc 2010-04-27 07:29:10