JQuery Formプラグインを使用して、Ajax経由でフォームを送信しています。私はさまざまな場所からコードをまとめましたが、1つを除いてすべてが完全に機能します。
PHPsuccess
処理ファイルからのデータが出力されると<div>
(つまり、「メッセージ送信」応答)。そのID<div>
は現在関数内で設定されています。私がやりたいのは、そのIDを関数の外に設定して、より簡単に再利用できるようにすることですが、そのIDを関数に渡す方法を一生理解することはできません。なぜなら:
success:
セクションに引数を設定できません。関数に名前を付けることしかできません。他の方法で引数を渡すことができないようです。つまり、成功関数に引数を追加することはできません。つまり
writeOutput(data,divID)
、他の場所で定義することはできませんdivID
。
関連するコードは次のとおりです。
$(formOne).ajaxForm({
beforeSubmit: function() {
return $(formOne).validate({
// validation rules
}).form();
},
beforeSend: function() {
// beforeSend actions
},
success: writeOutput
});
function writeOutput(data) {
var $out = $('#output');
if (typeof data == 'object' && data.nodeType)
data = elementToString(data.documentElement, true);
else if (typeof data == 'object')
data = objToString(data);
$out.append('<div>'+ data +'</div>');
}
writeOutput()
では、関数の外部でID(現在は#output)を定義するにはどうすればよいですか?