フォーム送信を介して複数の情報を送信しようとしています。この送信では、false を返し (ajax であるためページ要求をキャンセル)、フォームを閉じたいと思います。残念ながら、閉じるとリターンも行うようです。本当だと思います。投稿リクエストが失敗しないように。これにより、ダイアログが画面に表示されたままになります。$("#dialog-form").dialog("close"); を呼び出すと、return false は実行されず、ページが変更されます。
誰かがこれを修正する方法を知っている場合、または何か間違ったことをしている場合は非常に役立ちます:
JavaScript:
$('#modifyConsoleForm').submit(function(evt) {
$.ajax({
type : 'POST',
url : jQuery("#modifyConsoleForm").attr("action"),
data : jQuery(this).serialize(),
dataType : "json",
success : function(data) {
hideError();
},
error : function(data) {
setError('modify of console failed');
}
});
$("#dialog-form").dialog("close");
return false;
});
そして私のダイアログの初期化:
$("#dialog-form").dialog({
autoOpen : false,
height : 300,
width : 350,
modal : true,
close : function() {
allFields.val("").removeClass("ui-state-error");
}
});
また、ダイアログを閉じるときに常に false を返そうとしましたが、うまくいかなかったようです。何か不足していますか?