-3

私はこのように構造化されたdivを持っていますが、<div class="pin">CODE# 1234</div>jqueryを使用して「1234」を新しい値に置き換える方法は?

4

7 に答える 7

3

できるよ

$('.pin').text(function(idx, value){
    return value.replace(/\d+$/, 'newvalue')
})

デモ:フィドル

于 2013-08-13T04:57:42.563 に答える
1

使用.text().replace("1234", "new Val"):

var oldText = $(".pin").text();
$(".pin").text(oldText.replace("1234", "New Value"));

JSFIDDLE

別の解決策は、スパンを使用することです。

<div class="pin">CODE# <span class="value">1234<span></div>

そしてjs:

$(".value").text("newValue");
于 2013-08-13T04:57:48.930 に答える
1

replaceのようにしてみてください

$(".pin").text().replace("1234", "MYValue");

または、次のように試してください(動作する可能性がありますが、わかりません)

var txt = $('.pin').text();
txt_arr = txt.split(' ');    //txt.split('#'); even
txt_arr[1] = newValue;
$('.pin').text(txt_arr);
于 2013-08-13T04:58:21.633 に答える
1

これを試して

<div class="pin">CODE# <span class="code_value">1234<span></div>

$(".pin").find('.code_value').text().replace("1234", "New Value");

また

$(".pin").find('.code_value').html("New Value");
于 2013-08-13T05:01:24.023 に答える
1

関数はどうですか:

function replaceCode(codeToFind, codeToReplace) {
    $("div:contains('CODE# "+codeToFind+"')").text(function (_, value) {
        return value.replace('CODE# '+codeToFind, 'CODE# '+codeToReplace);
    });
}

replaceCode(1234, 9999);

ここでデモフィドル

上記の例で HTML を開始します。

<div class="pin">CODE# 1234</div>

結果の HTML:

<div class="pin">CODE# 9999</div>
于 2013-08-13T05:03:33.003 に答える