Jquery提交不起作用
我有一个最初为Jquery提交不起作用,jquery,.net,partial-views,Jquery,.net,Partial Views,我有一个最初为$(form.submit()工作的函数。我不得不修改它来处理$(“#savebutton”)。单击(),因为主视图中已经有一个form.sumbit()函数。唯一的问题是,当单击按钮且状态有效时,表单停止提交。 旧代码 当前代码 $(document).ready(function () { $("#saveButton").click(function (e) { e.preventDefault(); //prevent default form s
$(form.submit()
工作的函数。我不得不修改它来处理$(“#savebutton”)。单击()
,因为主视图中已经有一个form.sumbit()函数。唯一的问题是,当单击按钮且状态有效时,表单停止提交。
旧代码
当前代码
$(document).ready(function () {
$("#saveButton").click(function (e) {
e.preventDefault(); //prevent default form submit
$.ajax({
url: '@Url.Action("HasJobInProgress", "Shared")/',
data: { id: '@Model.ClientId' },
success: function (data) {
showMsg(data);
},
cache: false
});
});
function showMsg(hasCurrentJob) {
if (hasCurrentJob == "True") {
alert("The current clients has a job in progress. No changes can be saved until current job completes");
return false;
} else {
$("form").submit();
}
return true;
}
});
更新(仍不工作)
使用一种可能有效的技术。基本上,以编程方式再次单击同一按钮,并使用一个标志来确定它是否在确认方法中被单击(
showMsg
)。将在上面发布。如果你看到什么,请告诉我。@atbyrd,我没有看到你的更新版本有任何明显的错误。我建议您尝试使用调试器单步执行它。
$(document).ready(function () {
$("#saveButton").click(function (e) {
e.preventDefault(); //prevent default form submit
$.ajax({
url: '@Url.Action("HasJobInProgress", "Shared")/',
data: { id: '@Model.ClientId' },
success: function (data) {
showMsg(data);
},
cache: false
});
});
function showMsg(hasCurrentJob) {
if (hasCurrentJob == "True") {
alert("The current clients has a job in progress. No changes can be saved until current job completes");
return false;
} else {
$("form").submit();
}
return true;
}
});
$(document).ready(function () {
$("#saveButton").click(function (e) {
if ($(e.currentTarget).data('shouldSubmit')) return;
e.preventDefault(); //prevent default form submit
$.ajax({
url: '@Url.Action("HasJobInProgress", "Shared")/',
data: { id: '@Model.ClientId' },
success: function (data) {
showMsg(data, e);
},
cache: false
});
});
function showMsg(hasCurrentJob, e) {
if (hasCurrentJob == "True") {
alert("The current clients has a job in progress. No changes can be saved until current job completes");
return false;
} else {
$(e.currentTarget).data('shouldSubmit', true);
$("#saveButton").click();
$(e.currentTarget).data('shouldSubmit', null);
}
return true;
}
});