我有这个 javascript...
window.writeText = function(form) {
var text;
form.catnumber2.value = "PING";
text = document.getElementByName('cat2Number').innerHtml;
return alert(text);
};
但我没有收到预期的警告框。
当我通过 View /开发人员/查看源代码(我在 chrome 中)查看源代码时,svg 没有显示,但是当我使用 View /开发人员/开发人员工具时....我可以看到以下 svg... .
<svg height="594">
<g ID="MasterG">
<text name="cat2Number">"$1234"</text>
</g>
</svg>
知道我做错了什么吗?为什么我在“查看源代码”中看不到 svg 代码,但在“开发人员工具”中可以看到?这是我的问题的原因吗?这就是我的警报框不会“警报”的原因吗?
最佳答案
经过几秒钟的谷歌搜索并找到这个 https://stackoverflow.com/a/9602772/1217408
我创建了这个使用 textContent
的 JSFiddle 示例:http://jsfiddle.net/hVyTJ/1/
原文http://jsfiddle.net/hVyTJ/使用标准 DOM 遍历从根 SVG 元素获取文本元素。而更新直接通过 ID 定位文本元素。
至于查找属性值,您可以使用 getAttributeNS
,如下所述:http://www.carto.net/svg/manipulating_svg_with_dom_ecmascript/
编辑:
正如 Phrogz 所指出的,一个简单的 getAttribute
调用通常就足够了。阅读评论了解更多详情。
关于javascript - 使用 javascript 获取 svg 文本值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11727787/