我对MVC很新。我在这里有我的第一个Ajax表单:
<div id="test"></div>
<div id="MainChatMenu">
<% using (Ajax.BeginForm("SendMessage", "MainChat", new AjaxOptions { UpdateTargetId="test"}))
{ %>
<input id="chatMessageText" type="text" maxlength="200" />
<input type="submit" value="Go"/>
<% } %>
现在,如果我点击提交按钮,页面正在重新加载,goint到mysite / controller / action。 我认为Ajax.BeginForm的默认行为完全不是这样做的? 哪里是我的新手错误?
我的控制器被正确调用,但数据传递也不起作用。可能是因为同样的错误? 这是代码:
public class MainChatController : Controller
{
[AcceptVerbs(HttpVerbs.Post)]
public EmptyResult SendMessage(FormCollection formValues)
{
return new EmptyResult();
}
}
答案 0 :(得分:3)
确保您已包含必要的脚本库:
<script type="text/javascript" src="<%= Url.Content("~/scripts/MicrosoftAjax.js") %>"></script>
<script type="text/javascript" src="<%= Url.Content("~/scripts/MicrosoftMvcAjax.js") %>"></script>
答案 1 :(得分:0)
<% using (Ajax.BeginForm("SendMessage", "MainChat", new{}, new AjaxOptions { UpdateTargetId="test", HttpMethod="POST"})) %>