AngularJS中如何解决中文参数乱码问题?

今天在项目中遇到一个问题:

<li><a href="detail.html?name={{item.name}}"  title="{{item.name}}" >{{item.name | limitTo:4}}</a></li>


由于item.name返回的是中文名称,结果到detail页中获取到的name直接show在页面上时,就变成了乱码。

解决方案如下:

在js中写过滤器

var app = angular.module('kepler',['ui.bootstrap']);

app.filter('encodeUri', function ($window) {
return $window.encodeURIComponent;
});


app.filter('escape', function() {
return window.escape;
});

 

然后在html中修改如下

<li><a href="detail.html?name={{item.name | escape}}" title="{{item.name}}" >{{item.name | limitTo:4}}</a></li>
<li>{{item.level}}</li>

 

posted @ 2017-02-24 17:39  superlife  阅读(1688)  评论(0编辑  收藏  举报