4

如何使用jQuery将除最后一个标签字符$符号之外的每个标签的第一个字符更改为£?

这是代码:

<p align="center" id="myradio">
    <label>$25.00 </label>
    <input checked="checked" class="hide_input" name="amount" type="radio" value="25.00" />
    <label>$50.00</label>
    <input class="hide_input" name="amount" type="radio" value="50.00" />
    <label>$100.00</label>
    <input class="hide_input" name="amount" type="radio" value="100.00" />
    <label>$250.00</label>
    <input class="hide_input" name="amount" type="radio" value="250.00" />
    <label>$500.00</label>
    <input class="hide_input" name="amount" type="radio" value="500.00" />
    <label>$1000.00</label>
    <input class="hide_input" name="amount" type="radio" value="1000.00" />
    <label>other amount</label>
    <input class="show_input" id="other" name="amount" type="radio" value="" />
</p>
4

4 回答 4

12

您可以使用内部循环来交换字符:

$("#myradio label").html(function(){
    return this.innerHTML.replace( '$', '£' ); 
});
于 2012-04-26T16:35:54.410 回答
3
$("#myradio label:not(:last)").each(function() {
    $(this).text($(this).text().replace(/^\$/, "£"));
});
于 2012-04-26T16:35:34.113 回答
2
    $('#myradio label').each(function() {
       $(this).text('£' + $(this).text().substr(1));
    });

这基本上采用标签的子字符串,从第一个字符开始(直到结尾) - 这是没有 $ 符号的文本。并将其附加到英镑符号。此连接文本用于替换现有文本。

于 2012-04-26T16:37:30.827 回答
1
$('#myradio label').html(function() {
   return this.innerHTML.replace(/^\$/,'£');
});
于 2012-04-26T16:39:29.133 回答