Uncaught SyntaxError : Unexpected token ILLEGAL js错误

           最近用amazeui 的框架写了 一个webapp,中间测试后台管理上传文字内容后,有的模块能点击进入下一个界面,有的不可以。对于不可以模块点击后,开发者工具里就会显示Uncaught SyntaxError : Unexpected token ILLEGAL  的js错误,后来才知道是因为上传为文字有空格,通过一个方法传递带空格的内容便会出现问题。而且出现这个问题还有其他的原因,下面做了总结:

          1、传递带空格的参数

             我所犯得错误就是 传递了带空格的参数,其中content就是从后台获取的参数内容:         

onclick =\"sortlist('"+a.id+"','"+a.logo+"','"+a.content+"')\"

                 如果传递的content参数内容里面有空格,或者js后自动解析特殊字符,如+号为连接符,解析为空格,&为变量连接符,服务器端接受数据时&以后的数据不显示等等。js就会报错, 解决办法:

              (1) 当从后台管理系统 上传带有空格的json数据时,可以通过后台程序过滤掉空格。

               (2)  1.可以在js程序中,对空格或者特殊字符替换成十六进制的字符

                      2. 最简单的一种,使用escape函数处理一下

                            

$.ajax({
    type:"POST",
    contentType:"application/json",
    url:"http://"+url+"/shouyou/pushList.do",
    data:userjson,
    dataType:"json",
    success:function (data) {
         var contentEscape =escape(data.data.content);
       

       2还有一中原因, 在传递参数时,参数的写法不对,多引号或者少引号等写法问题导致出错

                       参数是字符串,却没有使用引号括起来,所以引发了此异常。



            

          


          

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值