js失效,参数完整就成功

js失效(传递的第二个参数是空)


<head>
        <meta charset="UTF-8">
        <title>Insert title here</title>
        <link rel="stylesheet" type="text/css" href="bootstrap/css/bootstrap.min.css"/>
        <script src="bootstrap/jquery-3.3.1.js" type="text/javascript"
            charset="utf-8"></script>
        <script type="text/javascript" src="bootstrap/bootstrap.min.js"></script>
        <script type="text/javascript">

<a href="javascript:dianzan('${fddetail.food_id }','${user.userid }')" ><img alt="" src="images/dianzan.png" id="dzdz"></a>

function dianzan(a,b){
                    alert(b);
                    if ($("#zhuangtai").val()==1){
                        $('#dzdz').attr('src','images/dianzan.png');
                    }else{
                        if (flag1 == 0) {
                             $('#dzdz').attr('src','images/dianzan.png');
                         }
                         if (flag1 == 1) {
                                $('#dzdz').attr('src','images/dianzanok.png');
                                
                           }
                         if (flag1 == 2) {
                             $('#dzdz').attr('src','images/dianzan.png');
                             flag1 = 0;
                         }
                         flag1++;    
                    }   
                $.ajax({
                    url:"caozuo?z=dianz",
                    async:false,
                    type:"POST",
                    dataType : "text",
                    data:{
                        food_id:a,
                        user_id:b
                        
                    },
                    success:function(data){
                         $("#dznum").text(data);  
                    }
                })            
            }    
            flag1++;

会显示错误:((
caught ReferenceError: dianzan is not defined
at :1:1
这个jsp页面上的js都无效,但是只要第二个参数不为空,这个js就能成功,这是为什么(另一个就jsp页面也有这样的写法,可以成功,这个页面就不行)

为dianzan重载一个只有一个参数的方法试试,然后调用两个参数的dianzan第二个参数传空。



function dianzan1(a){
  this.dianzan(a,'')
}

```