0
我有以下代碼,我試圖從常規頁面更改爲ajax頁面,所以當我提交表單時,我只刷新LInkList DIV。我更改使用線上使用Ajax.BeginForm它似乎整個頁面刷新,甚至認爲我正在使用Ajax.Beginform
這裏是查看代碼:
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<div id="LinkList">
<% Html.RenderPartial("TestUserControl", Model); %>
</div>
<%using (Ajax.BeginForm("AddNewLink", "Test", new AjaxOptions { UpdateTargetId = "LinkList" }))
{ %>
<fieldset style="text-align: left">
<legend>Add New Link</legend>
<table>
<tr>
<td>
Url:
</td>
<td>
<input style="width: 500px" type="text" name="url" />
</td>
</tr>
<tr>
<td>
<input type="submit" value="Add Link" name="submit" />
</td>
</tr>
</table>
</fieldset>
<% } %>
這裏是控制器代碼:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult AddNewLink(FormCollection collection_)
{
string url = collection_["url"].ToString();
Test test = new Test();
test.Name = DateTime.Now.ToString();
if (Request.IsAjaxRequest())
{
return PartialView("TestUserControl", test);
}
return View("Index", test);
}
任何想法,爲什麼整個頁面將在此刷新情況,而不是隻是什麼在div標籤? Request.IsAjaxRequest()總是返回false。
我把這個和IsAjaxRequest()返回false。有任何想法嗎? – leora 2009-09-12 01:26:38
您是否在客戶端檢查了導致您的JavaScript提交代碼無法運行的JavaScript錯誤。如果你的javascript壞了,它會做一個完整的帖子。 – tvanfosson 2009-09-12 01:29:21
我剛剛創建了一個新的testController,並且測試視圖沒有javascript,並且isajaxrequest仍然返回false。我已更新問題 – leora 2009-09-12 02:14:13