我有这行代码。它运作得很好,但我想知道是否有更聪明(阅读:更短)的方式吗?
svg.getElementById($(this).attr('id')).childNodes[0].childNodes[0].nodeValue = $(this).val();
我也在使用jQuery,所以任何jQuery方法都可以:)
达到的标记是
<text id=n>
<tspan>text to reach</tspan>
</text>
然而,即使标签被删除,如果我能够到达文本也是理想的。
答案 0 :(得分:1)
这可以让你改变文字:
$("#" + $(this).attr("id") + " tspan").text($(this).val());
答案 1 :(得分:0)
这可能是一个kludge,但它会替换文本元素的结束节点值,无论它是否具有tspan元素。此示例作用于具有“替换”类的输入字段。
$('.replace').keyup(function() {
if ($("#" + $(this).attr("id")).has("tspan").length) {
$("#" + $(this).attr("id") + " tspan").text($(this).val());
} else {
$("#" + $(this).attr("id")).text($(this).val());
}
}