我在我的ASP.NET MVC3应用程序中有一个非常基本的电子邮件提交表单。我正在尝试将jQuery表单插件集成到其中。
<script type="text/javascript" src="@Url.Content("~/Scripts/jquery.form.js")"></script>
<script type="text/javascript">
// prepare the form when the DOM is ready
$(document).ready(function () {
var options = {
beforeSubmit: showRequest,
success: showResponse
};
// bind form using 'ajaxForm'
$('#mailform').ajaxForm(options);
});
function showRequest(formData, jqForm, options) {
alert('request');
}
// post-submit callback
function showResponse(responseText, statusText, xhr, $form) {
alert('response');
}
</script>
...
<form action="@Url.Action("SubmitEmail")" class="mail-form" id="mailform" method="post">
<fieldset>
<span class="txt">
<input type="text" name="email" id="email" value="Enter Your Email Address" />
</span>
<input class="button" id="submitemail" type="submit" />
</fieldset>
</form>我测试了我的非AJAX版本,它工作得很好。但是,当我尝试使用jQuery插件时,会调用showRequest函数,但showResponse函数没有--而且该方法似乎也从未在服务器上被调用过。
发布于 2011-03-07 14:41:39
有几件事需要检查-你有一个用于jQuery表单的脚本标记,但我没有看到一个用于jQuery本身的脚本标记(你可能希望在插件之前列出jQuery )。
另外-安装Fiddler或Firebug,并确保请求被发送出去。抛开这一点,对于一个如此简单的调用来说,表单插件太夸张了。$.post将会工作得很好。
https://stackoverflow.com/questions/5216589
复制相似问题