yizia(椅子)你的意思是说,在我这种应用中switch没有用,只能用if???
  我可以这么理解么?

解决方案 »

  1.   

    var str = Request.Form("text"); //获取表单中提交的字符串
    select case str
      case "产品名称一号":
        ............
      case "产品名称二号":
        ............
      case else :
        ............
    end select
      

  2.   

    <script>
    var str=3;
    var str=3 + "";  //这句要或不要就能看出区别
    switch(str){
      case "3":
    alert("1");
    break;
      default:
    alert("0");
    }
    </script>
      

  3.   

    var str = Request.Form("text")+"";
      

  4.   

    var str = Request.Form("text"); 
    str += ""; //关键的一句!
    switch (str){
      case "产品名称一号":
        ............
        break;
      case "产品名称二号":
        ............
        break;
      default :
        ............
    }
      问题解决了!谢谢yizia,但偶不太明白中间的道理。
      当Request.Form("text")传递值给str的时候,str得到的应该是字符串啊,它从类型、长度、排序上都和case中的选项一样啊。应该来说===也可以等同啊。
      那么为什么要加上一个""才可以呢?
      这个偶不明白,希望高手们能指点一下!谢谢!
      

  5.   

    Response.Write(typeof(str)); //在Request.Form下行加入这行代码str是object类型,并非string类型+"" 就是将其转换为string类型。