使用miniui 加载 文本数据出现乱码
解决方案:
在vs的解决方案中的文件中找到高级保存选项,修改为Unicode编码
上图
l另外也可以通过对Url 传入参数的转码与反码来预防乱码的现象
前台:
function addKeyWords() //添加关键词到数据库
{
var id = bpptTree.getSelectedNode().Id;
var data = keyWords.getSelecteds();
if (data.length == 0) {
alert("请选择至少一条记录!");
}
else {
var json = mini.encode(data);
<strong><span style="color:#ff0000;"> json = encodeURI(json);</span></strong>
//alert(id);
$.ajax({
url: "/KeyWordsManager/AddKeyWords?id=" + id + "&words=" + json,
type: "post",
success: function () {
mini.showTips({
content: "数据添加成功",
state: "success",
x: "right",
y: "top",
timeout: 1500
});
},
error: function (err) {
toastr["error"](err.status + " - " + err.statusText);
}
});
}
keyWords.deselectAll();
}
后台:
public void AddKeyWords(string id, string words)
{
var userName = User.Identity.GetUserName();
<span style="color:#ff0000;"><strong> words = Server.UrlDecode(words);</strong></span>
var keywords = new Dictionary<string, int>();
var tokens = JArray.Parse(words);
if (tokens.HasValues)
{
foreach (var token in tokens)
{
var word = token["text"].ToString();
var order = Convert.ToInt32(token["id"].ToString());
//去除重复项
if (keywords.ContainsKey(word)) continue;
keywords.Add(word, order);
}
}
Service.AddKeyWords(id, userName, keywords);
}