2011-04-10 153 views
1

我正在學習如何做一個查詢字符串你會在發送和接收頁面上使用以下函數來查看作者的結果?javascript查詢字符串

function getQuerystring(key, default_) 
{ 
    if (default_==null) default_=""; 
    key = key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); 
    var regex = new RegExp("[\\?&]"+key+"=([^&#]*)"); 
    var qs = regex.exec(window.location.href); 
    if(qs == null) 
    return default_; 
    else 
    return qs[1]; 
} 

我發現它在:http://www.bloggingdeveloper.com/post/JavaScript-QueryString-ParseGet-QueryString-with-Client-Side-JavaScript.aspx

他們是什麼好查詢字符串的例子嗎?

+0

在一個側面的例子注意您瞭解'window.location.search'你呢?請參閱:http://stackoverflow.com/a/7090123/797194的 – m90 2012-12-25 16:31:40

+0

可能重複http://stackoverflow.com/questions/901115/how-can-i-get-query-string-values-in-javascript(我知道這件事遲到了,但值得注意的是 - 這似乎是一個超常見的問題) – 2014-02-19 09:54:05

回答

0

我不能完全告訴你問什麼,但我猜你正在尋找一種方式來測試這種方法,並驗證其行爲。這裏是我會做什麼,在HTML文件中保存這些內容:

<html> 
    <body> 
    <form name="form1"> 
     Key: <input type="text" name="text1" value="author"/> 
     <input type="button" name="button1" value="Test"/> 
    </form> 
    <script> 
     document.form1.button1.onclick = function() { 
     alert(getQuerystring(document.form1.text1.value)); 
     } 
     function getQuerystring(key, default_) { 
     // your code here... 
     } 
    </script> 
    </body> 
</html> 

現在你可以在Web瀏覽器中打開HTML頁面,添加查詢字符串,如「?author=me&foo=bar」。例如,如果你的文件保存在「C:\ tmp目錄\ example.html的」,那麼您的網址應該是這樣的:

file:///c:/tmp/example.html?author=me&foo=bar 

該頁面將顯示一個文本字段(說「作者」默認情況下)和一個按鈕,當你按下按鈕時,頁面將顯示一個彈出窗口,其結果是用放在文本字段中的值運行該功能。用我的示例查詢字符串,關鍵「作者」應該提醒「我」,關鍵「富」應該提醒「酒吧」。

0

http://www.example.com?variable=string&var2=ok&var3=str3

是一個查詢字符串

<script> 
var_this = getQuerystring(var2); 
if(var_this == "ok"){ 
    //do this 
}else{ 
    // do this 
} 
</script> 
0
function getQuerystringParameter(name, _default) { 
    var match = RegExp('[?&]' + name + '=([^&]*)') 
        .exec(window.location.search); 
    return (match && decodeURIComponent(match[1].replace(/\+/g, ' ')) || _default; 
}