当前位置:   article > 正文

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>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

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

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

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

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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/498017
推荐阅读
相关标签
  

闽ICP备14008679号