第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

使用JavaScript將參數(shù)添加到URL

使用JavaScript將參數(shù)添加到URL

桃花長(zhǎng)相依 2019-08-09 11:18:50
使用JavaScript將參數(shù)添加到URL在使用AJAX調(diào)用的Web應(yīng)用程序中,我需要提交請(qǐng)求,但在URL的末尾添加一個(gè)參數(shù),例如:原始網(wǎng)址:HTTP://server/myapp.php ID = 10結(jié)果URL:http://server/myapp.php?id = 10 &enabled = true尋找一個(gè)解析每個(gè)參數(shù)的URL的JavaScript函數(shù),然后添加新參數(shù)或更新值(如果已存在)。
查看完整描述

3 回答

?
交互式愛情

TA貢獻(xiàn)1712條經(jīng)驗(yàn) 獲得超3個(gè)贊

您需要適應(yīng)的基本實(shí)現(xiàn)看起來(lái)像這樣:

function insertParam(key, value){
    key = encodeURI(key); value = encodeURI(value);

    var kvp = document.location.search.substr(1).split('&');

    var i=kvp.length; var x; while(i--) 
    {
        x = kvp[i].split('=');

        if (x[0]==key)
        {
            x[1] = value;
            kvp[i] = x.join('=');
            break;
        }
    }

    if(i<0) {kvp[kvp.length] = [key,value].join('=');}

    //this will reload the page, it's likely better to store this until finished
    document.location.search = kvp.join('&'); }

這大約是正則表達(dá)式或基于搜索的解決方案的兩倍,但這完全取決于查詢字符串的長(zhǎng)度和任何匹配的索引


為了完成而我使用慢速正則表達(dá)式進(jìn)行基準(zhǔn)測(cè)試(大約慢了150%)

function insertParam2(key,value){
    key = encodeURIComponent(key); value = encodeURIComponent(value);

    var s = document.location.search;
    var kvp = key+"="+value;

    var r = new RegExp("(&|\\?)"+key+"=[^\&]*");

    s = s.replace(r,"$1"+kvp);

    if(!RegExp.$1) {s += (s.length>0 ? '&' : '?') + kvp;};

    //again, do what you will here
    document.location.search = s;}


查看完整回答
反對(duì) 回復(fù) 2019-08-09
?
喵喵時(shí)光機(jī)

TA貢獻(xiàn)1846條經(jīng)驗(yàn) 獲得超7個(gè)贊

謝謝大家的貢獻(xiàn)。我使用annakata代碼并修改為還包括url中根本沒有查詢字符串的情況。希望這會(huì)有所幫助。

function insertParam(key, value) {
        key = escape(key); value = escape(value);

        var kvp = document.location.search.substr(1).split('&');
        if (kvp == '') {
            document.location.search = '?' + key + '=' + value;
        }
        else {

            var i = kvp.length; var x; while (i--) {
                x = kvp[i].split('=');

                if (x[0] == key) {
                    x[1] = value;
                    kvp[i] = x.join('=');
                    break;
                }
            }

            if (i < 0) { kvp[kvp.length] = [key, value].join('='); }

            //this will reload the page, it's likely better to store this until finished
            document.location.search = kvp.join('&');
        }
    }


查看完整回答
反對(duì) 回復(fù) 2019-08-09
  • 3 回答
  • 0 關(guān)注
  • 994 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)