在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("\"", """);
<div ng-app="" ng-init="myText='@textToDisplay'">
<h1>myText</h1>
</div>
【讨论】:
以上是关于在Angularjs中使用ng-init初始化包含'的值时出现错误的主要内容,如果未能解决你的问题,请参考以下文章
ng-init 指令初始化 AngularJS 应用程序变量并支持html5
如何在 AngularJS 的 ng-init 中使用三元? [复制]