The error in the title of the post came from jQuery version 1.10.2, line 637
У меня есть модальный, который появляется на кнопке с помощью нескольких текстовых полей, и когда нажата кнопка внутри модала, информация, которая находится в текстовых полях, добавлен в базу данных через AJAX. Чтобы сделать страницу более удобной для пользователя, я добавил функцию setTimeout, чтобы приостановить скрытие модальности, чтобы пользователь мог видеть сообщение подтверждения, что данные были добавлены в базу данных. Блок 1 моего кода добавляет запись в базу данных, но вызов SetTimeout не работает правильно:Функция.prototype.apply: список аргументов имеет неправильный тип
function insert(data) {
data = JSON.stringify(data);
$.ajax({
type: "POST",
url: "../Service.asmx/InsertPerson",
dataType: "json",
contentType: "application/json",
data: data,
//record gets added to the database
//something about the setTimeout function
//that gives the error in the title
success: function() {
console.log('success before setTimeout');
var successMessage = $('<div>').text('Successfully added to the database...').css('color', 'green');
$('.modal-body').append(successMessage);
//*******this function doesn't run
window.setTimeout(function() {
$('#contact').modal('hide');
$('.modal-body input').each(function() {
$(this).val('');
}, 1000);
});
}
});
}
Я установил его с помощью кода: (функция успеха, что нам нужно обратить внимание здесь)
function insert(data) {
data = JSON.stringify(data);
$.ajax({
type: "POST",
url: "../Service.asmx/InsertPerson",
dataType: "json",
contentType: "application/json",
data: data,
//record gets added to the database
success: function() {
console.log('success before setTimeout');
var successMessage = $('<div>').text('Successfully added to the database...').css('color', 'green');
$('.modal-body').append(successMessage);
window.setTimeout(function() {
$('.modal-body input').each(function() {
$(this).val('');
});
$('#contact').modal('hide');
}, 1000);
}
});
}
я вижу, что в первом блоке я не закрывал функцию each
, и я установил, что во втором блоке, и именно поэтому она работает, но в будущем, что делает эта ошибка действительно MEAN в данном контексте?
Я не вижу '.apply' в любом месте вашего кода. – Halcyon
@FritsvanCampen, эта ошибка возникла из jQuery. – wootscootinboogie
@FritsvanCampen в версии 1.10.2 jQuery в строке 637 – wootscootinboogie