Uncaught SyntaxError: missing ) after argument list 错误解决

前端之家收集整理的这篇文章主要介绍了Uncaught SyntaxError: missing ) after argument list 错误解决前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

前一个星期随便玩玩的时候,在jsp里的<a onclick="click(参数1,参数2,参数3)">超链接</a> 传递参数请求ajax的时候出现了Uncaught SyntaxError: missing ) after argument list这个错误,去网上查询这个错误,发现是丢失),导致的问题,但是怎么检查都没缺少括号,代码具体如下:

<a target="_blank" onclick="click(<%=user.id%>,<%=user.name%>,<%=user.number%>)" class="blue">查看</a>

<!-- 通过ajax请求到userQuery查询类 -->
<script type="text/javascript"> function click(id,name,number){ $.ajax({ type:"post",url:"/student/userInfo/userQuery.htm?id=" + escape(id)+"&"+escape(name)+"&"+escape(number),data:{"id" : id,"name" : name,"number" : number},dataType: 'text',success: successMsg,error: errorMsg }) function errorMsg() { $("div.dialog").show(); $("#info").html("查询用户信息出错"); } function successMsg(msg) { if (msg == "SUCCESS"){ $("div.dialog").show(); $("#info").html("查询成功"); } else { $("div.dialog").show(); $("#info").html("查询失败"); } } } </script>

点击查看超链接的时候就会报Uncaught SyntaxError: missing ) after argument list 这个错误,经过查看如果只带一个参数时<%=user.id%>为int类型时就不会有此问题,传三个参数时,其中有不为int类型的参数传递时必须修改一下代码代码修改如下:

<a target="_blank" onclick="click('<%=user.id%>','<%=user.name%>','<%=user.number%>')" class="blue">查看</a>

其中ajax请求的方法不需要改,这样就不会报这个错误了,js经常会报一些错误,所以需要细心检查代码,比如看是否数据传的时候格式有问题,没加分号,数据少传,少了括号等等。

以上内容仅供参考,谢谢!

猜你在找的Ajax相关文章