function changeAud(Val){
   alert(encodeURIComponent(Val)+"--------"+encodeURIComponent("通过"));
   Val=Val.replace(/(^\s*)|(\s*$)/g, "");
   alert("--"+encodeURIComponent(Val)+"--------"+encodeURIComponent("通过")+"--");
   alert("Val"+Val)
    if(Val=="通过")
   Val=1;
if(Val=="不通过")
   Val=2;
else
   Val=3;
alert("Val"+Val);Val传进去的值为通过的时候Val的值却不是1,而是3!
可是Val传进去的值为不通过的时候Val的值却可以正常的赋到2!!!

解决方案 »

  1.   

    function changeAud(Val){
    alert(encodeURIComponent(Val)+"--------"+encodeURIComponent("通过"));
    Val=Val.replace(/(^\s*)|(\s*$)/g, "");
    alert("--"+encodeURIComponent(Val)+"--------"+encodeURIComponent("通过")+"--");
    alert("Val"+Val)
    if(Val=="通过"){Val=1;}
    else if(Val=="不通过"){Val=2;}
    else{Val=3;}
    alert("Val"+Val);
    }
      

  2.   

    if(Val=="通过") {
    Val=1;
    } else if(Val=="不通过") {
    Val=2;
    } else {
    Val=3;
    }
      

  3.   

    嗯,我看着也是少了个“else”!
      

  4.   

    if(Val=="通过") {
    Val=1;
    } else if(Val=="不通过") {
    Val=2;
    } else {
    Val=3;
    }
      

  5.   


    function changeAud(Val) {
    alert(encodeURIComponent(Val) + "--------" + encodeURIComponent("通过"));
    Val = Val.replace(/(^\s*)|(\s*$)/g, "");
    alert("--" + encodeURIComponent(Val) + "--------" + encodeURIComponent("通过") + "--");
    alert("Val" + Val)
    if (Val == "通过") {
    Val = 1;
    } else if (Val == "不通过") {
    Val = 2;
    } else {
    Val = 3;
    }
    alert("Val" + Val);
    }其实有很多问题都是由于我们的代码不按照标准的书写格式来造成的 这就是个典型的例子 
    后边要注意哦~~ 
      

  6.   

    if(Val=="通过")
    Val=1;
    if(Val=="不通过")
    Val=2;就这样就是了,不是通过就是通不过,不是1就是2,没事弄个3干嘛。
      

  7.   

    你目前的逻辑是
    //一组
    if(Val=="通过")//成立 val=1
    Val=1;
    //一组
    if(Val=="不通过")//不成立 val=3,    成立时  val=2
    Val=2;
    else
    Val=3;
    其实是你的if  else 用错了
      

  8.   

    if(Val=="通过")
    Val=1;
    else if(Val=="不通过")
    Val=2;
    else
    Val=3;else能使人蛋碎~~
      

  9.   

    if(Val=="通过")
    Val=1;

    if(Val=="不通过")
    Val=2;
    else
    Val=3;
    上面红色的是你传“通过”时执行的语句,第二个if前面加上一个else