在Angularjs中使用ng-init初始化包含'的值时出现错误

Posted

技术标签:

【中文标题】在Angularjs中使用ng-init初始化包含\'的值时出现错误【英文标题】:I am getting error while initialize value containing ' using ng-init in Angularjs在Angularjs中使用ng-init初始化包含'的值时出现错误 【发布时间】:2020-06-22 06:28:18 【问题描述】:

在 Angularjs 中使用 ng-init 初始化包含 ' 的值时出现错误。

例如:

@
var textToDisplay="Suman's Question";
<div ng-app="" ng-init="myText='@textToDisplay'">
<h1>myText</h1>
</div>

上述查询抛出错误

[$parse:lexerr]

我正在使用 MVC 来呈现视图。 提前感谢您的建议..

【问题讨论】:

ng-init="myText='Suman\'s Question'" 你需要处理这个 Suman's 你不能把单引号放在单引号里,所以你必须把转义字符 `` 所以让它像这样 ng-init="myText='Suman\'s Question'" 【参考方案1】:

答案如下

@
var textToDisplay="Suman's Question";
textToDisplay= textToDisplay.Replace("'", "\\'");
<div ng-app="" ng-init="myText='@textToDisplay'">
<h1>myText</h1>
</div>

如果它使用 " 那么代码就像。

@
var textToDisplay="Suman"s Question";
textToDisplay= textToDisplay.Replace("\"", "&#34");
<div ng-app="" ng-init="myText='@textToDisplay'">
<h1>myText</h1>
</div>

【讨论】:

以上是关于在Angularjs中使用ng-init初始化包含'的值时出现错误的主要内容,如果未能解决你的问题,请参考以下文章

ng-init 指令初始化 AngularJS 应用程序变量并支持html5

如何在 AngularJS 的 ng-init 中使用三元? [复制]

AngularJS --- 指令

无法使用 ng-init 调用 angularjs 函数

使用angularjs,ngInit加载视图时初始化范围值的正确方法?

angularJs 学习笔记