2011-07-07 15 views
1

私のアプリケーションではjQuery Impromptuプロンプトを使用しており、非常に役立ちます。しかし、即興を呼び出すためのJavascriptの動的変数名

は、あなたがそうのようなボタン名とその戻り値を指定する必要が求められます。

$.prompt('Example 2',{ buttons: { Ok: true, Cancel: false } }); 

私は本当に、動的なボタン名を持っているために、このような何か希望:

function showprompt(question, button1, button2) { 
    $.prompt(question,{ buttons: { button1: true, button2: false } }); 
} 

これはうまくいかないようですが、ボタンは単に「button1」と「button2」と呼ばれています!

私はeval(button1)''+button1を使ってみましたが、構文エラーが発生しました。

提案がありますか?

答えて

8

オブジェクトリテラルのプロパティ名は(文字列ではなく)識別子である可能性があるため、変数を使用することはできません。

オブジェクトを作成し、角かっこ表記を使用して値を割り当てる必要があります。

function showprompt(question, button1, button2) { 
    var buttons = { }; 
    buttons[button1] = true; 
    buttons[button2] = false; 
    $.prompt(question,{ buttons: buttons }); 
} 
+0

素晴らしい、ありがとう! – cusimar9

関連する問題