2011-08-05 16 views
2

私はbeginginer jQuery開発者です。オブジェクトのプロパティを表示するためにjQuery UIダイアログを使用しています。jQuery-UIダイアログボタン - btnクリック関数に引数を渡します。

var $dialog = $('<div></div>') 
    .html('This dialog will show every time!') 
    .dialog({ 
     autoOpen: false, 
     title: 'Properties' 
    }); 

だからこれは、ダイアログで、のは私がプロパティ(Pタグ)を追加し、これらのプロパティのいくつかのために、私はボタンをたいた構造を持っているとしましょう。

var dialogHtml = ""; 
var dialog_buttons = {}; 
for (var key in d.properties){ 
    var str; 
    var str = '<p>' + something + '</p>'; 

    if (condition){ 
     dialog_buttons[key] = function() 
      { functionName(key); }; 
    } 

    dialogHtml = dialogHtml + str; 
} 
$dialog.dialog("option", "buttons", dialog_buttons); 
$dialog.dialog('open'); 

そしてどこかに私が機能を持っている:私は問題を抱えているところ

function functionName(key){ 
    // something something 
} 

です:関数に渡されますキー変数...]ボタンは、キーがある呼び出されたとき繰り返しの最後の値。ボタンがクリックされたときに のは、我々はキー1、2、3、4を持っているとしましょう、その後、重要なパラメータは、私がどのボタンが押されたを知るために、ダイアログボックスからボタンをクリックしたときに、私が欲しい4.

になります

誰も私を助けることができますか?

ありがとうございます!

+0

クリックイベントからのイベント・データを使用。 –

答えて

1

あなたが見つけた答えを投稿することができれば、それは有用であろう(see here)

$('#btn').click(function(e) { 
    functionName(e.target); 
}); 

Explanation of Event.Target

+0

ありがとう!私は自分自身で答えを見つけましたが、理由を正確には知りませんでした。再度、感謝します! –

関連する問題