现在要截取url的字符串问题如下
如果url是这样的形式showInfo.aspx?id=200701的话,即带参数的,则截取id的值200701,并将此值赋给一个input,如果只是showInfo.aspx的话,取不进行截取,
要求在页面装载执行此js以前没有写过js,求助一下,谢谢啊

解决方案 »

  1.   

    function ParseQueryString(sQueryString)
    {
    var IndexBegin = sQueryString.indexOf("id=") + "id=".length;
            if(IndexBegin == -1)
                    return "";
    var IndexEnd = sQueryString.indexOf("&", IndexBegin);
    if(IndexEnd == -1)
    IndexEnd = sQueryString.length;
    var result = sQueryString.substring(IndexBegin, IndexEnd);
    return result;
    }var id = ParseQueryString(document.location);
    //注意这里得到的id是string型的
      

  2.   

    String.prototype.getQueryString = function(name)
    {
      var reg = new RegExp("(^|&|\\?)"+ name +"=([^&]*)(&|$)");
      var r = this.match(reg);
      if (r!=null) return unescape(r[2]); return null;
    }var id = "showInfo.aspx?id=200701".getQueryString("id");
    alert(id);var id = window.location.href.getQueryString("id");
    if(id!=null) alert(id);
      

  3.   

    function fStrQryStr(sStr,sPrefix){
       if(!sPrefix) sPrefix='';
       if(!sStr) sStr=location.search;
       if(sStr.length==0)return false;
       sStr.replace(/([^\=\?\&]+)\=([^\&\=]+)/g,function($0,$1,$2){
        eval(sPrefix+$1+'=$2');
       });
      } // end function fStrQryStr(sStr,sPrefix)  //shawl.qiu code
      

  4.   

    都不懂呵,得恶补一下,传递的参数只有一个,不需要"&"
      

  5.   

    写个通用函数
    function ParseQueryString(string)
    {
    var strQueryString = document.location.search;
    var strSearchFor = string + "=";
    var IndexBegin = strQueryString.indexOf(strSearchFor) + strSearchFor.length;
    if(IndexBegin == -1)
    return "";
    var IndexEnd = strQueryString.indexOf("&", IndexBegin);
    if(IndexEnd == -1)
    IndexEnd = strQueryString.length;
    var result = strQueryString.substring(IndexBegin, IndexEnd);
    return result;
    }这个用法就跟Request.QueryString差不多了
    比如
    var id = ParseQueryString("id");
      

  6.   

    还有一个问题,页面载入的时候怎么调用,在form里用onload="";好像没有效果。
      

  7.   

    onload 是 <body>的属性
      

  8.   

    同意meizz的观点我个人是喜欢用正则来解决这个问题