Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript d3.js v4和AngularJS中不受信任的HTML_Javascript_Angularjs_Unicode_D3.js - Fatal编程技术网

Javascript d3.js v4和AngularJS中不受信任的HTML

Javascript d3.js v4和AngularJS中不受信任的HTML,javascript,angularjs,unicode,d3.js,Javascript,Angularjs,Unicode,D3.js,我遇到了特殊字符显示不正确的问题,我正在通过angular js指令生成一个d3.js树布局图,该指令将文本添加到图中,但任何特殊字符都没有正确显示,而不是我得到的撇号';及;而不是&等等。。。我尝试过使用过滤器$filter('html')(d.name),但运气不佳 app.filter('html',function($sce){ return function(input){ var value = input.toString();

我遇到了特殊字符显示不正确的问题,我正在通过angular js指令生成一个d3.js树布局图,该指令将文本添加到图中,但任何特殊字符都没有正确显示,而不是我得到的撇号';及;而不是&等等。。。我尝试过使用过滤器
$filter('html')(d.name)
,但运气不佳

    app.filter('html',function($sce){
    return function(input){
        var value = input.toString();
        console.log(input);
        var output = $sce.trustAsHtml(value);
        console.log(output);
        return output;
    }
});
我还尝试了以下方法:

 nodeEnter.append("text")
      .attr("dy", 3)
      .attr("x", 1e-6)

      .attr("compile-template","")
      .attr("ng-bind-html", function(d) {
        var output = $sce.trustAsHtml(d.name);  
        return output;
      })


如果运气不好,有没有其他方法可以通过我的指令显示特殊字符?

问题是,现在,您正试图在SVG文本元素中使用一个,但这不起作用

第一个解决方案就是将HTML实体更改为正确的。例如,要显示符号AND,而不是:

.text("&")

你应该做:

.text("\u0026")
检查代码段:

var svg=d3.选择(“主体”)
.append(“svg”)
.attr(“宽度”,400)
.attr(“高度”,200);
svg.append(“文本”)
.attr(“x”,10)
.attr(“y”,20)
.text(“这是一个带有HTML实体的符号:&;(不好)”;
svg.append(“文本”)
.attr(“x”,10)
.attr(“y”,50)
.text(“这是一个带有Unicode:\u0026(完美)”的符号)

您是否将此文本附加到SVG?是的,先生@Gerardofurta我想我知道你要去哪里吗,svg不能解释html?我使用字符串中的replace函数替换'及;这是可行的,但还有更优雅的解决方案吗?我正在写一个答案。。。不能在SVG中使用HTML实体。你能把它们改成unicode吗?还是将文本作为包含HTML实体的字符串获取?是否有预先建立的javascript函数?继续写你的答案吧,我没有想到这是一个SVG
.text("&")
.text("\u0026")