使用特定数据属性更改所有元素的文本

时间:2014-04-24 02:17:05

标签: javascript jquery custom-data-attribute

我目前正在尝试使用jQuery将多个元素的文本更改为特定数据属性的值。

例如:

index.html
----------
<h1 data-change="text2">text1</h1>
<p data-change="paragraph2">paragraph1</p>

我想改变&#39; text1&#39;到&#39; text2&#39;和&#39;段1&#39;到第2段&#39; (该特定元素的数据更改值)。

我将如何做到这一点?

我以为我能够选择&#39;所有具有数据属性&#39;数据变化的元素&#39;然后只做一个简单的$(this).text($(this).data('change'));或其他东西。

3 个答案:

答案 0 :(得分:2)

.text方法可以接受回调函数。

$('[data-change]').text(function() {
  return $(this).data('change');
});

答案 1 :(得分:1)

你可以这样做:

$('[data-change]').each(function(){
    $(this).text($(this).data('change'));
});

您可以迭代元素并更改其文本。

答案 2 :(得分:0)

你想怎么样〜

-html-         

   <select id="" name="" class="input_select">

          <option value="text2" selected="selected">text2</option>
           <option value="paragraph2">paragraph2</option>
   </select>

  <h1 class="text2">text1</h1>
   <p class="paragraph2">paragraph1</p>
 </pre>

-js- $(document).ready(function(){

$('.input_select').change(function(){ var valitem = $(this).val() if (valitem == 'text2') { $('.text2').text(valitem) }else{ $('.paragraph2').text(valitem) } }) });