向現有URL末尾添加查詢字符串參數
xhr.open("get", "example.php?name1=value1&name2=value2", true);
function addURLParam(url, name, value) {
// 判斷是否含有?,沒有就添加?,否則添加& url += (url.indexOf("?") == -1 ? "?" : "&"); url += encodeURIComponent(name) + "=" +encodeURIComponent(value); return url ; }
這個 addURLParam()函數接受三個參數:要添加參數的 URL、參數的名稱和參數的值。這個函數
首先檢查 URL 是否包含問號(以確定是否已經有參數存在)。如果沒有,就添加一個問號;否則,就添
加一個和號。然后,將參數名稱和值進行編碼,再添加到 URL 的末尾。最后返回添加參數之后的 URL
下面是使用這個函數來構建請求 URL 的示例。
var url = "example.php"; //添加參數 url = addURLParam(url, "name", "Nicholas"); url = addURLParam(url, "book", "Professional JavaScript"); //初始化請求 xhr.open("get", url, false);
在這里使用 addURLParam()函數可以確保查詢字符串的格式良好,並可靠地用於 XHR 對象