使用jQuery将ID更改为段落中的文本,并使用下划线替换空格

时间:2012-09-09 03:25:31

标签: javascript jquery html

我想了解p标记中的文字,并将p标记设为父(div)ID。我还想为_代码中的任何空格添加p

示例:

<div class="circle"><p>Apple</p></div>
<div class="circle"><p>Banana</p></div>
<div class="circle"><p>Carrot Juice</p></div>

<div id="Apple" class="circle"><p>Apple</p></div>
<div id="Banana" class="circle"><p>Banana</p></div>
<div id="Carrot_Juice" class="circle"><p>Carrot Juice</p></div>

2 个答案:

答案 0 :(得分:3)

$('div.circle p').each(function() {
    $(this).parent('div').attr('id', $(this).text().replace(/ /g,'_'));
});​

<强> jsFiddle example

答案 1 :(得分:2)

使用jQuery,使用$('div.circle p')作为选择器,并通过parent()设置其.attr()的id属性。

$('div.circle p').each(function() {
  // For each <p>, get the parent and set id attribute
  // to the value of the <p>'s text() (via $(this))
  // after replacing spaces with _
  $(this).parent().attr('id', $(this).text().replace(' ', '_'));
  // Edit: for global replacement, use a global regexp /\s/g
  $(this).parent().attr('id', $(this).text().replace(/\s/g, '_'));
});

的jsfiddle:

Here's a working example.