我尝试将文本更改为此代码:
<li>
<a id="toggle-edition" href="#">
<span class="glyphicon glyphicon-pencil"></span> Edit page
</a>
</li>
使用
$("#toggle-edition").text('Save Page')
我的范围被移除:(
答案 0 :(得分:1)
我的范围已删除是您覆盖anchor
元素内容时的预期行为。
使用以下代码:
$("#toggle-edition > span")[0].nextSibling.nodeValue = 'Save Page';
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a id="toggle-edition" href="#">
<span class="glyphicon glyphicon-pencil"></span> Edit page
</a>
答案 1 :(得分:1)
jQuery不适用于文本/注释节点。使用相关的普通js方法,例如:
$("#toggle-edition > span")[0].nextSibling.nodeValue = "Save Page";
更多jQuery之类的,可能是:
$("#toggle-edition").contents().filter(function(){
return this.nodeType === 3 && $(this.previousSibling).hasClass('glyphicon');
}).replaceWith('Save Page');
答案 2 :(得分:0)
你可以尝试:
$("#toggle-edition").text('<span class="glyphicon glyphicon-pencil"></span> Save Page');
答案 3 :(得分:0)
尝试这个
$(document).ready(function () {
var gettextr = $("#toggle-edition");
var oldVal = gettextr.text();
var NewStr = $(gettextr).html().replace($.trim(oldVal), 'Save Page');
$(gettextr).html(NewStr);
});
答案 4 :(得分:0)
只需重置html内容
memcpy(buffer, (char *) &message.udp_eid, sizeof(unsigned int));
因此您不会替换元素范围,而是在此span元素新文本
之后插入看这里的工作代码: https://plnkr.co/edit/lAFCfVkN2DsvGA0GQmvn?p=preview
答案 5 :(得分:0)
用span和Id包装文本。因此,您可以使用$("#SpanID").html('Save page')
更改文本而不删除上一个Span
<a id="toggle-edition" href="#">
<span class="glyphicon glyphicon-pencil"></span>
<span id="SpanID"> Edit page </span> </a>