現在、変数番号を定義しています。このようなjqueryダイアログのボタンの
var buttonNames = buttonNamesString.split("|");
var buttonsOpts = {};
for (i = 0; i < buttonNames.length; i++) {
buttonsOpts[buttonNames[i]] = function() { $(this).dialog("close");__doPostBack(postbackControlID, buttonNames[i]);}
}
そして、このようにダイアログを初期化します。(ラインボタンに注意してください:buttonsOpts。これが、ボタンの変数番号を渡す方法です)
var parentElement = popupControl.parent();
popupControl.dialog({
autoOpen: false,
modal: true,
buttons: buttonsOpts,
hide: "explode",
open:function(type, data){
$(this).parent().appendTo(parentElement);
popupControl.css({visibility: "visible"});
}
});
問題は、ダイアログ内のボタンがクリックされたときに、i が最大値までインクリメントされているため、buttonNames[i] が行に何も返さないことです。
function() { $(this).dialog("close");__doPostBack(postbackControlID, buttonNames[i]);}
.Net イベントで送信者オブジェクトを使用するように、Javascript のイベント コード内からイベントを発生させるオブジェクトにアクセスできますか。それは問題を解決するでしょう。
どうすればこれを克服できますか?前もって感謝します。