有关“ &”由后台输出到前端的问题
2012-03-06 22:55
176 查看
在后台用C#生成(或从SQL数据库读取一字段值)一字符串:“AB&&C&D”,并试图在客户端通过JS获取其值,结果发现,在IE中显示为:“AB&&C”,FF中为:“AB&&C&D”。显然,IE中的结果与实际需要的值有出入。为了能在IE中正常显示其值,可以在后台或前端修正。
(一)在后台修正:
为了将字串中的“&”字符都替换为“&”,可以写一个方法:
之后将此方法应用到需要修正的字符中:
(二)在前端修正:
此时后台代码中并没有写入并应运Repl()方法:
但为了能将字符串中所有的“&”字符都在客户端正确显示,可以用JS写一个Repla()方法:
之后将此方法应运到需要修正的字符即可。
能过上述两种方法,均可以在IE中正确显示包含“&”的字串值。
结果都为:“AB&&C&D”。
(一)在后台修正:
为了将字串中的“&”字符都替换为“&”,可以写一个方法:
public string Repl(string Str) { string newStr = string.Empty; newStr= Str.Replace("&", "&"); return newStr; }
之后将此方法应用到需要修正的字符中:
protected string JSON = string.Empty; protected void Page_Load(object sender, EventArgs e) { string a = @"AB&&C&D"; JSON = "{\"A\":\""+ Repl(a) +"\"}"; }
(二)在前端修正:
此时后台代码中并没有写入并应运Repl()方法:
protected string JSON = string.Empty; protected void Page_Load(object sender, EventArgs e) { string a = @"AB&&C&D"; JSON = "{\"A\":\""+ a +"\"}"; }
但为了能将字符串中所有的“&”字符都在客户端正确显示,可以用JS写一个Repla()方法:
function Repla(str){ var ret=''; if(str.indexOf('&')>-1){ ret=str.replace(/&/g,'&'); } return ret; }
之后将此方法应运到需要修正的字符即可。
能过上述两种方法,均可以在IE中正确显示包含“&”的字串值。
结果都为:“AB&&C&D”。
相关文章推荐
- 前端datagrid("getSelections")问题&后台SQL查询问题
- VC6.0中有关输出运算符<<的重载问题(备忘)
- 利用"线段树"相关算法解决有关数组的问题[待续]
- WEB-INF&nbsp;有关的目录路径问题总结
- 有关printf输出的问题
- cout 堆栈,operator<< 运算符重载输出问题
- Python2.6.6的ElementTree输出xml中汉字变成&#xxxx的问题
- #HTML5 & JS TIPS# 合法解决纯JS+HTML5前端简单跨域与复杂跨域问题
- nohup 后台运行,以及重定向标准输出和标准错误 &/dev/null 文件
- 有关js parseInt("08")问题
- struts2 后台action向前端JSP传递参数的问题
- bug笔记 - Servlet&JSP --- 前端页面乱码问题
- C++有关char变量地址输出的问题
- Linux内核学习中---有关#define LIST_HEAD_INIT(name) { &(name), &(name) }的问题
- Mybatis 的Log4j日志输出问题 - 以及有关日志的所有问题
- linux nohup python 后台运行无输出问题
- 有关"SELECT FOR UPDATE"的一些问题 .
- Web前端 bom 头 <feff>的问题
- 进入新公司的第一篇博客_有关后台验证_图片验证码的问题
- Java彻底解决前端传中文到后台乱码问题的代码