這裏是MVC的新手,我希望通過將它放在主頁面上讓登錄框在整個站點的jQuery對話框中工作。ASP.NET MVC 2 jquery對話框回發問題
我都包裹着一個對話框div的,logOn.aspx形式,並添加一個按鈕,打開對話框和一些JQ
<button id="show-sign-in">Sign In</button>
<script type="text/javascript">
$(function() {
$("#dialog").dialog({
bgiframe: true,
autoOpen: false,
modal: true
});
$('#show-sign-in').click(function() {
$('#dialog').dialog('open');
});
</script>
<div id="dialog" title="User Login">...</div>
問題:
如果我包括在網頁中掌握RenderPartial,控制器的ActionResult將不會捕獲提交,除非網址中有/ Account。
Html.RenderPartial(「〜/ Views/Account/LogOn.aspx」);
如果我將它與Ajax請求一起使用(下面),則提交會很好,但是如果登錄嘗試無效,則頁面會重定向到實際的LogOn頁面(我想將它們返回到對話框)。
<script type="text/javascript"> $(document).ready(function() { $.ajax({ url: "/Account/LogOn", cache: false, success: function (html) { $("#logindisplay").append(html); } }); });</script>
底線,這是我做了很多,在網頁表單ASCX,我覺得這惱人去通過Ajax獲得很多的JS做同樣的事情,我是完全接近這一錯誤?有任何想法嗎?
讓我再次解釋設置和問題。我有一個ascx在我的主JQ對話框中打開onclick,它會在對話框中加載登錄表單(MVC自帶的表單),因此它在提交時會觸發帳戶控制器中的LogOn ActionResult。 我的問題是,無效登錄情況下的返回是一個View();這實際上是/ Account/LogOn頁面,我該如何改變它,以便原始頁面將在打開的對話框中加載(錯誤結果將顯示在ValidationSummary中)?在webforms中,我只是在窗體周圍放置了一個更新面板,但是除非我錯過了一些沒有局部頁面渲染的東西 – saarpa 2010-02-14 17:17:44
RenderPartial和RenderAction可能有幫助.. – mare 2010-02-14 20:22:43