我在使用 jQuery 的 submit()
提交表单时遇到问题.
我的页面上没有任何名称为 name="submit"
的元素或 name="Submit"
,同样适用于 ID。
我的一段jQuery代码如下:
$(document).ready(function () {
$(document).on('click', "#appSubmit",function(e){
e.preventDefault();
var value = $("#time").val();
if(value == "--"){
$( "#err-time" ).dialog( "open" );
}else{
alert("1");
var dummy = $("#appSubmit").val();
alert(dummy);
$("#appSubmit").submit();
alert("2");
}
});
});
所有警报都正常工作,甚至是 alert(dummy);
打印出正确的值。 alert("2");
打印出来,所以它甚至没有打破 $("#appSubmit").submit();
我的提交按钮是
<input type="submit" name="appSubmit" id="appSubmit" value="Apply">
如有任何想法,我们将不胜感激。
编辑:
对不起,我忘了发布一个实际问题。表单在到达 $("#appSubmit").submit();
行时未提交在我的代码中。它也不会破裂。
在 jQuery 站点上,他们提供的示例将事件附加到 <i+n+p+u+t type="submit">
, 但我已经通过尝试将事件附加到表单的 id 来尝试它,但我仍然得到相同的行为。毫无破绽地通过了这条线。
我能让它工作的唯一方法是使用基本的 javascript 提交调用 document.applySubmit.submit();
这很好,并且可以完成工作。但我还是想弄清楚这一点。
编辑 2:
我会尝试 .closest 方法。直到现在我才知道那是什么。谢谢。如果有效,我会发布。
编辑 3:
这个问题是我发了 3 次吗?如果是这样,我很抱歉。我一定是找不到我自己的问题,并假设我从未完成整个问题提交过程并尝试第二次/第三次正确发布它。
编辑: Blazemonger 的建议奏效了。
最佳答案
您.submit()
不是一个按钮,您.submit()
是一个表单。尝试:
$("#appSubmit").closest('form').submit();
或者更好:
$(this).closest('form').submit();
关于jquery - jQuery .submit() 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12462584/