這一個讓我難住。我想從label
元素中刪除「+」。這裏的HTML:從字符串中移除一個字符:不移除內部元素
<label class="option" for="edit-attributes-21-33">
<input type="radio" id="edit-attributes-21-33" name="attributes[21]"
value="33" checked="checked" class="form-radio"> 4 oz, +$15.00</label>
我開始用這個
$(".option").each(function(index, value) {
$(this).text($(this).text().replace("+", ""));
})
這消除了 「+」,而且還剔除了input元素。於是我嘗試:
$(".option").each(function(index, value) {
var oldString = $(this).html();
var newString = oldString.replace("+", "");
console.log(oldString, newString);
$(this).text(newString);
})
這使得正確的HTML標記的字符串,但它是一個字符串,並傳回給DOM的方式。我看到另一篇文章有同樣的問題,但沒有解決方案。
相關但不完全重複:http://stackoverflow.com/questions/4106809/how-can-i-change-an-elements-text-without-changing-its-child -lelements –
我不確定輸入元素的含義是否被刪除?給出一個例子,說明它最初是什麼,在當前代碼之後它變成了什麼,以及你希望它做什麼。 EX:原文:'Abc + 123 + 456'應該是'Abc 123 + 456',但這段代碼返回'Abc 123 456' – Nitroware