1

クリックするとオプション値を取得し、変数に割り当てようとしています。次に、この変数は、要素を非表示にするセレクターの一部として呼び出されます。このコードを使用していますが、変数を使用すると機能しませんでした:

     $("#State ul li").live('click', function (event) {
    var currentstate = $(this).children('a').html();

    if ( $(this).hasClass("selected") ) {
        $("#state_"+currentstate).show();
    };

 });

div#state_arizonawithがdisplay: noneあり、特定の状態が選択されたときにこの div を表示したい。

次のことを試してみると、問題なく div が表示されます。

if ( $(this).hasClass("selected") ) {
$("#state_arizona).show();
};

これはul htmlです:

<ul>
 <li>
     <a href="#" class="ajax-filter-label">
        <span class="checkbox"></span> Alaska </a>
 </li>
</ul>

何か助けはありますか?

4

2 に答える 2

3

これを試して:

$("#State ul li").live('click', function (event) {
    var currentstate = $(this).children('a').text();

    if ($(this).hasClass("selected")) {
        $("#state_" + $.trim(currentstate).toLowerCase()).show();
    };
});

ID によるセレクターでは大文字と小文字が区別されることに注意してください。

于 2012-11-17T20:38:46.743 に答える
0

いくつかのこと。

HTML を再構築できる場合は、次のようにします。

<ul>
  <li>
    <a href="#" class="ajax-filter-label" data-state="alaska">
    <span class="checkbox"></span> Alaska </a>
 </li>
</ul>

次に、JS で .data を使用して状態の値を取得できます。

$("#state_"+ currentstate.data('state')).show();
于 2012-11-17T20:41:58.663 に答える