如果url:
www.qq.com?name=456
移除后变为:www.qq.com
www.qq.com?id=123&name=456
移除后变为:www.qq.com?id=123
www.qq.com?id=123&name=456&value=789
移除后变为:www.qq.com?id=123&value=789
这个功能该怎么实现?

解决方案 »

  1.   

     Request.QueryString.Remove(key);
      

  2.   

    var i ='www.qq.com?id=123&name=456';
    alert(i.replace(/(&?)name=[^&]+/g,""));
      

  3.   

    测试过了,对我以上所说的3中url都无效,我的url中并没有amp;
      

  4.   

    不错,但是对于www.qq.com?name=456这样的url还是不适用,用来你的方法移除后的url变成了www.qq.com?
    后面的问号没有被移除,求解
      

  5.   


    再加一句不就行了么?
    i = (i.split("?")[1]=="")?i.replace("?",""):i
      

  6.   

    var i =['www.qq.com?id=123&name=456','www.qq.com?name=456','www.qq.com?id=123&name=456&value=789','www.qq.com?name=456&value=789'];
    for(var temp in i) {
    alert(i[temp].replace(/([&\?]?)name=[^&]+(&?)/g,function(a,b,c){
    if(c.length == 0) {
    return '';
    } else {
    return b;
    }
    }));
    }
      

  7.   

    url地址不是固定的,我要先
    var url=location;//获取当前url
    然后对该url种的参数进行移除,该怎么做呢?
      

  8.   

    var i = location.href;
    alert(i.replace(/([&\?]?)name=[^&]+(&?)/g,function(a,b,c){
    if(c.length == 0) {
    return '';
    } else {
    return b;
    }
    }));
      

  9.   


    var i = location.href;
    var param = "name";
    var reg = new RegExp("([&\?]?)"+ param +"=[^&]+(&?)","g")
    alert(i.replace(reg,function(a,b,c){
    if(c.length == 0) {
    return '';
    } else {
    return b;
    }
    }));在这里劝一句楼主。做程序员的要用脑子
      

  10.   

    问题终于解决了,公布下答案:
    function DeleteParam(name) {
        var i = location.href;
        var reg = new RegExp("([&\?]?)" + name + "=[^&]+(&?)", "g")    var newUrl = i.replace(reg, function (a, b, c) {
            if (c.length == 0) {
                return '';
            } else {
                return b;
            }
        });
        location.href = newUrl;
    }