javascript - d3 foreignObjects,从数据中添加复选框和文本

标签 javascript d3.js

附加一个带有外部对象的 html 复选框和文本。

.attr("id",function(d){return d.id;})
        .append("foreignObject")
          .attr("width", 200)
          .attr("height", 200)
          .attr("x",0)
          .attr("y",0)
          .append("xhtml:body")
          .html("<form><input type=checkbox id=check class=tick/></form>")

上面的代码有效,但如果我尝试将跨度/标签与复选框一起放置,那也有效,但前提是使用纯文本值。我想根据下面的数据动态地做标签

html("<form><input type=checkbox id=check class=tick/><span>"+function(d){return d.name;}+"</span></form>")

但它不计算函数并输出文本“function(d){return d.name;}”作为标签。我在这里做错了什么?

最佳答案

您需要向 html() 传递函数或字符串,而不是与函数连接的字符串。这应该有效:

.html(function(d) {return "<form><input type=checkbox id=check class=tick/><span>" + d.name + "</span></form>";})

关于javascript - d3 foreignObjects,从数据中添加复选框和文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23984625/

相关文章:

javascript - 在同一元素上实现 shift click 和 click 功能

Javascript 数组 - 从文本框(jquery)中提取的字符串创建

php - Fusion Tables API : How do I make a PUT request to update a style via Ruby, JavaScript 或其他语言?

javascript - Hello.js 的 Twitter 错误

javascript - 我可以在 ember 中编写帮助程序以避免代码重复的地方

javascript - 将 Circles 和 Path 分组为 D3 Force Layout 中的节点?

javascript - 搜索后力向图中的 d3.js 节点位置

d3.js - 在 d3.js 或 graphviz 或类似程序中以编程方式绘制框图

javascript - d3.js 强制布局具有一些固定节点(在网格中)

javascript - 使用 Pickadate.js 时禁用以前的日期