Javascript 如何将SVG行的字符串作为选中的d3js对象

Javascript 如何将SVG行的字符串作为选中的d3js对象,javascript,d3.js,svg,Javascript,D3.js,Svg,我通过以下方式使用鼠标创建了svg行: 在Mousedown: drawObject = d3.select('#drawing').append('line') .classed(lineClass, true) .classed("graphic", true) .attr("x1", pointerOrigin.x) .attr("y1", pointerOrigin.y) .attr("x2", pointe

我通过以下方式使用鼠标创建了svg行:
在Mousedown:

drawObject = d3.select('#drawing').append('line')
        .classed(lineClass, true)
        .classed("graphic", true)
        .attr("x1", pointerOrigin.x)
        .attr("y1", pointerOrigin.y)
        .attr("x2", pointerOrigin.x)
        .attr("y2", pointerOrigin.y);
在MouseMove上:

drawObject.attr("x2", pointerPosition.x)
        .attr("y2", pointerPosition.y);
现在我想把这一行保存到数据库中。 我的想法是保存字符串,就像我使用手动创建的一些分组元素bevor所做的那样

如何获得这样的行字符串:

<line xmlns="http://www.w3.org/2000/svg" class="graphic" x1="1870" y1="-20" x2="1920" y2="-110" />

这是绘图的结果,应在drawObject中选择。
有类似drawObject.innerHtml的东西吗?

outerHTML
是您要找的。嗯。。。这给了我未定义的:console.log(drawObject.outerHTML);另一个想法是获取元素的类型并逐步读取属性。但是这里我也很困惑…
drawObject.node().outerHTML
您需要从D3选择中获取实际的DOM节点。哦,是的,这就是解决方案。非常感谢。