1

有一个绑定到文本框的名称字段。一切正常。现在,当有人输入 unicode 字符时,它会转换为 html 元素。在页面重新加载输入框中的名称显示 html 元素。这不应该是这样!你怎么解决这个问题?

<input placeholder='Name' type="text" ng-model="form.firstName" ng-required="true" />

name = health &amp; wealth
textbox = health &amp; wealth
required in textbox = health & wealth
4

1 回答 1

0

您可以使用过滤器对其进行格式化。

<input placeholder='Name' type="text" ng-model="form.firstName | html" ng-required="true" />

添加此过滤器:

angular.module("formatFilters", []).filter('html', function() {
    function(input) {
        return input.replace(/&amp;/g, "&");
    };
});

最后,不要忘记将此过滤器添加到模块中。

angular.module("app", ['formatFilters'])
于 2013-08-31T09:04:33.380 回答