Я использую плагин jquery для отправки форм в мое приложение MVC.Проблема в моей функции обратного вызова «успех» обратного вызова.В этой функции я делаю 2 вызова к другим функциям JavaScript, которые у меня есть.Один обновляет часть страницы, а другой отправляет сообщение пользователю в другой части страницы.
Проблема в том, что только один из них будет выполнен.Это то, что я поставил первым в функции обратного вызова.Я пытался явно вернуть значение из первой функции, чтобы попытаться вернуть управление функции обратного вызова, и это просто не работает.Я не хочу избавляться от своих двух отдельных функций, потому что я часто использую этот код и очень хочу сохранить его в одном месте.
Вот код.(здесь есть предупреждение, чтобы доказать, что оно не работает)
function ShowProposedDate_Submit() {
// prepare Options Object
var options = {
dataType: 'json',
success: function (responseText) {
$("#blankModal").dialog("close");
var ret = RefreshGrid(); //this function will execute but will not return
alert(ret); //this statement won't execute
PostMessage(responseText.msg); //this function won't execute
},
error: function (responseText) {
$("#feedback").html(responseText.msg);
}
};
// pass options to ajaxForm
$('#showProposedDate').ajaxForm(options);
}
Вот дополнительные функции.
function PostMessage(message) {
$('.message_wrap').remove();
$("<div></div>)").addClass("message_wrap")
.text(message)
.prependTo(".grid_20");
KillMessage();
}
function RefreshGrid() {
$.get("/workitems/list", function (data) {
$("#grid").replaceWith(data);
getAvailableActions(0);
getMoreDetails(0);
ResetCheckbox();
return 0;
});
}
Каждая из этих функций прекрасно работает, если я размещу ее сначала в порядке.Есть идеи, почему я не могу запустить их обоих?