所以我创建了一个包含多个表单的html站点,使用jQuery对话框UI进行显示,使用jQuery表单插件进行ajax提交.
表格如下:
<form id="login_form" action="admin.PHP" method="post"> Username: <input type="text" name="username" id="username"/><br/> Password: <input type="password" name="password" id="password"/> </form>
…表单选项如下所示:
$('#login_form').dialog({ buttons:{ "Login": function(){ var options = { success: function(data){ alert(data); $(this).dialog("close"); $('#news_form').dialog("open"); },timeout: 3000,fail: function(data){ alert('fail'); },clearForm: true }; // bind form using 'ajaxForm' $('#news_form').ajaxSubmit(options); },"Exit": function(){ $(this).dialog("close"); } } });
<?PHP $data = 'Herro!'; echo $data; ?>
问题是,在成功时,表单返回作为提交源的html页面,而不是’Herro!’像我预料的那样.那我做错了什么?
admin.html和admin.PHP文件都在同一个目录中.
此外,网络是通过xampp在本地运行,但我试图将它放在Web服务器上,没有任何改进.
最终编辑:问题实际上是因为我在DOM中调用了一个不同的表单对象来提交数据,这是一个没有设置action属性的表单.感谢大家的快速解决方案.
更改$(‘#news_form’).ajaxSubmit(options); to $(‘#login_form’).ajaxSubmit(options);