这是 Firebug 显示的 HTML 表单的代码:
<form action="http://localhost/home/newuser" method="post">
<input type="hidden" value="48" name="user_id">
<input type="text" name="username">
<input type="submit" value="Next">
</form>
下面是一些绑定(bind)到它的 jQuery 代码:
$('.popup .newuser form').live('submit', function()
{
$(this).ajaxSubmit(function(data)
{
// handle response
});
return false;
});
但是,当我单击“下一步”按钮时,文本字段会显示以前输入的值的组合框(Firefox 功能)。 Firebug 的网络选项卡上没有显示 HTML 请求,并且未命中 jQuery 监听器中的断点。
感觉好像我错过了一些非常明显的东西......
更新:我意识到发生了更奇怪的事情:我无法通过键盘在文本字段中输入任何内容。我只能从 Firefox 组合框中选择以前的值。这样做之后,我什至无法选择框中的文本。
最佳答案
事实证明问题与 jQuery 或 Javascript 无关;相反,它位于 CSS 中,其中包含表单的 DIV 的 z-index 为 1,并且它本身包含在 jQuery-UI 对话框中,框架给出的 z-index 为 1001。显然这导致了内部 DIV (以及表单)完全不接收任何键盘或鼠标事件。
关于jquery - 为什么我的 HTML 表单在 jQuery-UI 对话框中没有提交?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10088267/