我需要用连字符( - )替换所有特殊字符,例如(Inka -Tiitto-s-Camp-Aero-Gravity-Milan-9)。但是我收到了这个错误。
=>所提交的网址带有不被接受的字符。 并得到这样的名字(Inka Tiitto&#39营地@Aero Gravity米兰-9)
我已经尝试过这行代码,但没有得到理想的结果。
<a href="<?= BASEURL ?>camp/{{x.name.split('/[\.,-\/#!$%\^&\*;:{}=\-_`~()@\+\?><\[\]\+]/g').join('-')}}-{{x.id}}">{{x.name}}</a>
任何人都可以帮我解决这个问题。 任何帮助将不胜感激。
提前致谢
答案 0 :(得分:0)
您可以通过编写自定义filter来完成此操作。
angular.module('filters')
.filter('replaceChars', function() {
return function(value) {
if(!value) {
return '';
}
return value
.toString()
.replace(/[\.,-\/#!$%\^&\*;:{}=\-_`~()@\+\?><\[\]\+]/g, '-');
};
});
然后在模板中使用它:
<a href="<?= BASEURL ?>camp/{{x.name | replaceChars}}-{{x.id}}">{{x.name}}</a>