替换dom元素中的所有字符串

时间:2011-04-15 15:09:01

标签: jquery replace

我有一块像这样的DOM

<table style="display:none;" id="risposta-campione">
<tr>
<td>
    <label>Risposta</label><textarea id="risposta_0000" name="risposta_0000" cols="35" rows="2"></textarea>
    <button type="button" onclick="cancellaRispostaDomanda('0000')" class="cancella-risposta"></button>
    <button type="button" onclick="aggiungiRispostaDomanda('0000')" class="aggiungi-risposta"></button>
</td>
</tr>
</table>

我想用jquery替换所有'0000',而不是获取每个元素。

这可能吗?

我试过了:

elem = $('#risposta-campione').text() // how convert dom to string?!
elem.replace('0000', 'hello');

没有解决方案: - /

5 个答案:

答案 0 :(得分:5)

使用$('#risposta-campione').html().replace('0000', 'hello');

答案 1 :(得分:5)

strings = $('#risposta-campione').html();
strings = strings.replace(/0000/g,"hello");

这会将所有0000替换为hello

答案 2 :(得分:1)

只需使用html()函数

elem = $('#risposta-campione').html()

答案 3 :(得分:1)

var text = $('#risposta-campione').html().replace(/0000/g, 'hello');  // g is case sensitive search in string

//Or

var text = $('#risposta-campione').html().replace(/0000/gi, 'hello');  // gi is case insensitive search in string

答案 4 :(得分:0)

是的,就像你使用直接元素一样效率不高,但它可以在一行中完成:

 $("#risposta-campione").html($("#risposta-campione").html().replace("0000", "your-new-text"));