var a = window.location.search
a = a.substr(1,a.length-1)
alert(a)

解决方案 »

  1.   

    a.asp
    ===============
    <script>
    var a = window.location.search
    if(a.length>0)
    {
    a = a.substr(1,a.length-1)
    alert(a)
    }
    </script>
    <form method=get action="a.asp">
    <input name=aa>
    <input type=submit>
    </form>
      

  2.   

    如果你是用表单生成,而且提交的方式是method="get"的话,可以用下面的函数得到相应的值:
    function toquery()
    {
      var tmpstr=unescape(window.location.toString());
      var tmp=tmpstr.indexOf('?')
      tmpstr=tmpstr.substring(tmp+1,tmpstr.length);
      var strs=tmpstr.split('&');
      for (var i=0;i<strs.length;i++) eval(strs[i]+";");
    }
    上面一个unescape()是一个解码,如果你要自己生成的话,你就要对?后边的字符串进行相应的escape()编码。例如:
    window.location="here.htm?"+escape("message=I love her?\"yes.\"");
      

  3.   

    to net_lover(孟子E章) , Reve(仨仁仕) 
    谢谢两位,我已经可以截获到希望的字符串了,现在还有个小问题,我每次点击submit按钮时它所反映出来的字符串不是本次的查询条件,而是上一次的,不知可否帮忙解决,谢谢我的form定义:<form method="get" name="search" onsubmit="getSelect()">我的submit按钮定义:<input type="submit" value="查         询" name="Submitbutton"></P>
    我的getselect()定义: function getSelect()
    {
    var tmpstr=unescape(window.location.toString());
    var tmp=tmpstr.indexOf('?')
    tmpstr=tmpstr.substring(tmp+1,tmpstr.length);
    alert(tmpstr);
    return tmpstr;
    }
      

  4.   

    本次用
    document.formname.txtname.value
    直接得到
      

  5.   

    这个只能得到当前form中某一个文本框的内容阿,我得不到到要提交的字符串.
    我是希望在按submit按钮的同时就得到本次要提交的那个复杂的字符串.现在用window.location.toString()总是晚一步,第一次总是给我表示html文件所在的位置的一个字符串,第二次才是第一次按submit按钮时真正产生的提交字符串
      

  6.   

    用split()
    var mm=document.formname.txtname.value
    str=mm.split("?")
    str[1]就是你要的东西,如果有多个问号,改str[]数组里的数就可以了
      

  7.   

    str = "text1=" + document.formname.text1.value + "&text2=" + document.formname.text2.value + "&text3=" + document.formname.text3.value + "&text4=" + document.formname.text4.value + "&select1=" + document.formname.select1.value + "........................."