次のコードがあります。
function submitHandler(dialog) {
dialog.$submits.disableBt();
dialog.$message.addMessage("loading", "<li>Contacting Server, please wait ...</li>");
$.ajax({
url: href,
dataType: 'json',
type: 'POST',
data: dialog.$form.serializeArray()
})
.done(onSubmitDone())
.fail(onSubmitFail());
}
この関数には、次のようなオブジェクトであるダイアログのパラメーターがあります。
{
$modal: $modal,
$form: $modal.find('.form'),
$message: $modal.find('.message'),
$submits: $modal.find('.submit-button'),
href: $form.attr('data-href')
};
ダイアログ オブジェクトを onSubmitDone および onSubmitFail 関数に送信する必要があります。以前は、$modal、$form などを保持するためにオブジェクトを使用していませんでした。変数はすべて、外部関数内に含まれるすべての関数で使用できました。
2 つの質問:
オブジェクトの一部として物事を渡すのは賢明ですか、それとも外部関数の先頭でこれらの変数を宣言するだけでよいでしょうか。
オブジェクトを渡す場合、次のように渡すにはどうすればよいですか。
function onSubmitDone(json) {
json = json || {};
if (json.Success) {
switch (action) {
json オブジェクトが渡されることは理解していますが、ダイアログ オブジェクトも渡すにはどうすればよいですか?