0

私は自分のサイトにjqueryを使用していますが、ボタンが押されたときに呼び出す必要のある変数のリストがあります。基本的に、クラス名から変数を決定する必要があります!:(

例: http: //jsfiddle.net/shannonhochkins/f6dLQ/

したがって、「website」のクラス名を返します。これは変数「website」でもありますが、文字列「website」ではなく変数と等しくなるように何らかの方法で決定する必要がありますか?

助けてください!

4

2 に答える 2

1

変数を関数内ではなくグローバル スコープで宣言すると、ウィンドウ オブジェクトのプロパティになり、簡単に取得できます。

$(document).ready(function(){
    $('body a').click(function() {
        var name = $(this).attr('class');
        alert(window[name]);
    });
});    

var website = "http://journal.shannonhochkins.com/";

http://jsfiddle.net/f6dLQ/3/

于 2012-07-29T06:10:43.227 に答える
1

Musa の解決策はうまくいきますが、これは貧弱な設計のように思えます。クラス名をデータにマッピングするテーブルを作成することをお勧めします。

var class_table = {
  website: "http://journal.shannonhochkins.com/",
  ...
}

次に使用するalert(class_table[name])

于 2012-07-29T06:19:46.287 に答える