1

私は次のようなhtml構造を持っています:

<div class="dk_options">
   <ul class="dk_options_inner">
      <li class="dk_option_current"><a data-dk-dropdown-value="">Select State</a></li>
      <li class=""><a data-dk-dropdown-value="1">AK</a></li>
      <li class=""><a data-dk-dropdown-value="2">AL</a></li>
      <li class=""><a data-dk-dropdown-value="3">AR</a></li>
      <li class=""><a data-dk-dropdown-value="4">AZ</a></li>
      <li class=""><a data-dk-dropdown-value="5">CA</a></li>
      <li class=""><a data-dk-dropdown-value="6">CO</a></li>
   </ul>
</div>

タグ属性 data-dk-dropdown-value の値を取得したいです。私のコードは常に空で表示されます

var a=jQuery('#dk_container_businessState .dk_options ul li a').attr('data-dk-dropdown-value');
alert(a);
4

5 に答える 5

2

これを試して:

jQuery('#dk_container_businessState .dk_options li').each(function(){
  var a = jQuery(this).find('a').attr('data-dk-dropdown-value');
  alert(a);
});

代わりに.data()、より適切に使用するために使用します。

var a = jQuery(this).find('a').data('dk-dropdown-value');

data-* カスタム属性の読み取り

于 2013-02-18T07:03:04.070 に答える
1

これを参照してください:http://jsfiddle.net/gUYX6/

 jQuery('#dk_container_businessState .dk_options li').each(function(){
  var a = jQuery(this).find('a').data('dk-dropdown-value');
  alert(a);
});
于 2013-02-18T07:04:01.850 に答える
0

これを試して、

$(document).ready(function() {
    $('.dk_options .dk_options_inner li a').each(function(){
       alert($(this).attr('data-dk-dropdown-value'));
    });
});
于 2013-02-18T08:18:37.867 に答える
0

attr を使用しないでください。このためのデータ関数があります。要素のデータを選択する正しい方法は次のとおりです。

var val = $('.dk_options ul li a').data('dk-dropdown-value');

データ使用を設定するには:

$('.dk_options ul li a').data('dk-dropdown-value', 'value');
于 2013-02-18T07:06:57.373 に答える
-1

セレクターはリスト内のすべての要素を収集していますが、.data() メソッドは最初に一致した要素に対してのみ機能します。その要素の data-dk-dropdown-value 属性の値は "" です。

一致した各要素のすべての値が必要な場合は、次のようにしてみてください。

var a=[];
jQuery('#dk_container_businessState .dk_options ul li a').each(function () {
  a.push($(this).data('dk-dropdown-value'));
});
alert(a);
于 2013-02-18T07:03:36.020 に答える