javascript - 使用 javascript 获取 svg 文本值

标签 javascript svg text innertext

我有这个 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/

相关文章:

javascript - 为什么这个矩形不宽

python-3.x - 如何将多个单元格合并为一个文本单元格

excel - 将文字文本转换为公式

regex - 我们如何匹配任何单个字符,包括 Perl 正则表达式中的换行符?

javascript - scrollHeight 大于 clientHeight,即使没有滚动内容

javascript - 无法使用 React js 显示本地文件夹中的 svg

javascript - 在 AngularJS 中为按钮添加默认值

html - 使用后台方法定位 svg 问题

javascript - 动态存储对 setTimeout() 的引用

javascript - 在上传期间向 GridFS Meteor FS 文件添加自定义属性