Uncaught TypeError: Cannot read properties of undefined (reading 'each')
Есть 2 формы, которые формируются в модальном окне. Через них отправляются Ajax запросы на соответствующие методы. Но, при надажии submit у одной из них появляется ошибка:
Uncaught TypeError: Cannot read properties of undefined (reading 'each')
at o._jQueryInterface (modal.js:516)
at Object.success (ventilyacionnie_ustanovki:513)
at u (jquery.min.js:2)
at Object.fireWith [as resolveWith] (jquery.min.js:2)
at k (jquery.min.js:2)
at XMLHttpRequest.<anonymous> (jquery.min.js:2)
Причем только на проде. На тесте нормально отрабатывает. В чем может быть проблема?
Ниже методы, которыми они формируются:
<script>
function setModalSubmit(panelId, okMetod, ...args) {
//consolelog('setModalSubmit');
//consolelog('setModalSubmit', panelId, okMetod);
var frm = $('#' + panelId + ' .modal-body form').eq(0);
///consolelog('setModalSubmit Form', frm);
var btCancel = $('#' + panelId + ' form ' + 'button[name ="btCancel"]').eq(0);
var updatePanel = $('#' + panelId + ' .modal-body').eq(0);
//var btSave = $('#' + panelId + ' .modal-footer ' + 'button[name ="btSave"]').eq(0);
//if (btSave != null)
// btSave.click(function () {
// //consolelog('frm', frm);
// frm.trigger('submit')
// });
if ((btCancel != null) && (okMetod != null))
btCancel.click(function () { okMetod(...args); });
if (frm == null)
return;
frm.submit(function (e) {
e.preventDefault();
if (frm.valid() == false) {
console.log('NotVAlid');
return false;
}
updatePanel.html(loadingDiv);
//blockScreen();
$.ajax({
type: frm.attr('method'),
url: frm.attr('action'),
data: frm.serialize(),
success: function (data) {
consolelog('success');
if (data.length == 0) {
if (okMetod != null) okMetod(...args);
}
else {
updatePanel.html(data);
setModalSubmit(panelId, okMetod, ...args);
}
},
error: function (data) {
consolelog('An error occurred.', data.responseText);
updatePanel.html(errorDiv);
if (Debug)
updatePanel.append("<p>" + data.responseText + "</p>");
},
});
});
}
function showGetPrice() {
var panelId = 'feedback-modal';
var updatePanel = $('#' + panelId + ' .modal-body').eq(0);
var OkMetod = $("#feedback-modal").modal;
$("#feedback-modal-title").html('Получить прайс-лист');
pdatePanel.html(loadingDiv);
//$('#fileInfo').hide();
$.ajax({
type: "POST",
url: "/Ajax/GetPrice",
data: {
//type: 'Product',
//id: FirmId
}
}).done(function (data) {
consolelog("done");
updatePanel.html(data);
setModalSubmit(panelId, OkMetod, 'hide');
$("#feedback-modal").modal('show');
}).fail(function (data) {
consolelog("False", data);
});
};
function showFeedback(id) {
var panelId = 'feedback-modal';
var updatePanel = $('#' + panelId + ' .modal-body').eq(0);
var OkMetod = $("#feedback-modal").modal;
$("#feedback-modal-title").html('Обратный звонок');
$.ajax({
type: "POST",
url: "/Ajax/GetFeedback",
data: {
//type: 'Product',
//id: FirmId
}
}).done(function (data) {
consolelog("done");
updatePanel.html(data);
setModalSubmit(panelId, OkMetod, 'hide');
$("#feedback-modal").modal('show');
$("#FormID").val(id);
}).fail(function (data) {
consolelog("False", data);
});
};
</script>