d3js-使用javascript操作创建服务器端SVG

d3js-使用javascript操作创建服务器端SVG,javascript,node.js,d3.js,Javascript,Node.js,D3.js,我试图在绑定到在NodeJS中创建的SVG元素的操作上调用javascript代码d3@3. 不幸的是,on('click')未呈现 router.get('/test', function(req, res) { const dom = new JSDOM(); var svg = d3.select(dom.window.document.body) .append("svg") .attr("xmlns", "http://www.w3.o

我试图在绑定到在NodeJS中创建的SVG元素的操作上调用javascript代码d3@3. 不幸的是,on('click')未呈现

router.get('/test', function(req, res) {
    const dom = new JSDOM();
    var svg = d3.select(dom.window.document.body)
        .append("svg")
        .attr("xmlns", "http://www.w3.org/2000/svg")

    svg.insert('rect') 
        .attr("width", 200)
        .attr("height", 200)
        .on('click', function() { console.log('click')});

    svgStr = dom.window.document.body.innerHTML;
    res.set('Content-Type', 'image/svg+xml');
    res.send(svgStr);
})
输出:

<svg xmlns="http://www.w3.org/2000/svg"><rect width="200" height="200"> 
</rect></svg>

“点击”按钮在哪里?

设置

`
//...
.attr("height", 200)
.attr("onclick" , "console.log('click')")`
为您点击

请记住,不允许从图像到页面执行操作