我有一个脚本,该脚本将表单发送到控制器方法,并且试图将其发送为POST请求,但出现“太多递归”错误。这是代码:
var modalConfirm = function(callback) {
$("#modal-btn-si").on("click", function() {
callback(true);
$("#modal-confirm").modal('hide');
});
$("#modal-btn-no").on("click", function() {
callback(false);
$("#modal-confirm").modal('hide');
});
};
function confirmar(form, text) {
$("#modal-confirm").modal('show');
modalConfirm(function(confirm) {
if (confirm) {
$.post("NuevaOpcion", {
data: $('#' + form)
});
}
});
};
我修改的行是
$.post("NuevaOpcion",{ data: $('#' + form) });
添加$.post()
后,我得到了:
too much recursion[Saber más] jquery-3.3.1.js:8423:24
我很迷茫,不知道我是怎么犯这样的错误的。预先感谢。
答案 0 :(得分:1)
为什么所有代码? 这应该起作用
您还需要序列化表格
var currentForm;
$("#modal-btn-si").on("click", function() {
$.post("NuevaOpcion", {
data: $('#' + currentForm).serialize()
});
$("#modal-confirm").modal('hide');
});
$("#modal-btn-no").on("click", function() {
$("#modal-confirm").modal('hide');
});
function confirmar(form, text) {
currentForm = form;
$("#modal-confirm").modal('show');
};
如果只有一种形式,请删除全局变量并使用ID
data: $('#actualID').serialize()