- 博客(1)
- 资源 (4)
- 收藏
- 关注
原创 字符串内特殊字符在html_javascript_xml等内使用时的转换 ,"缺少十六进制数字"错误的处理
javascript在提交数据时若遇到”/”会把它当做javascript的特殊字符对待(相当于关键字),从而打乱了javascript代码,会报"缺少十六进制数字"的错误,解决办法是将”/”替换成”//”即可!本文还提供了一个通用组件,不仅可以转换javascript的,还可以转换html,xml等的特殊字符,如还有错误,欢迎指正!
2011-01-13 16:01:00 550
文件上传下载示例(可以输入用户名上传,并且可以查看或下载某用户名上传的附件)
该示例可以根据你输入的用户名将上传的附件保存到以该用户名命名的文件夹下,并且可以通过输入用户名查看某用户上传的附件!代码注释都很详尽!
如果用户想实现无刷新上传附件的话,可以在表单form后面加一个隐藏的iframe,比如:
<iframe id="ifm" name="ifm" style="display:none" ></iframe>
然后在form的target属性设置为"ifm"即可!
2011-01-13
字符串内特殊字符在html_javascript_xml等内使用时的转换
前些天在做项目时遇到一个很大的困难,就是在javascript中动态创建一个链接,链接到服务器上的某个附件,点击它就可以查看或是下载。代码我都已经写好如下:
function createHref(pathname){
var newHref=document.createElement("a");
newHref.href="OneDownloadServlet?pathname="+ pathname;
}
页面中将服务器上链接到该附件的绝对地址作为参数pathname的值传递给createHref(pathname)函数,可是页面在加载时总是无法将pathname传递给该函数,调试时IE报”缺少十六进制数字”这样的错误,实在是看不懂什么意思,于是上网百度,果然有很多人都遇到了这样的问题.原来是javascript在提交数据时若遇到”\”会把它当做javascript的特殊字符对待(相当于关键字),从而打乱了javascript代码,导致错误.而我的pathname由于是绝对地址,包含了很多个”\”,所以报错。解决办法是将”\”替换成”\\”即可!网上有一个通用的转码组件,不仅可以转换javascript的,还可以转换html,xml等的特殊字符,许多帖子都转载了它。但是我对它进行了测试,发现有很多错误,或者是函数过期,或者是替换字符串写错,还有对javascript的转换函数中缺少对”\”的转换.于是对其进行了修正,然后测试就成功了!比如我上面的例子,若使用该组件的话只需要: pathname= CommStr.jsEncoder(pathname)即可!现在我把该帖子贴出来,给大家参考,如还有错误,欢迎指正!
2011-01-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人