使用Knockout JS获取URL参数

时间:2015-11-27 04:22:49

标签: knockout.js

假设我有这样的网址:

http://www.example.com/apples?myParam=123&myOtherParam=456

如何使用Knockout JS检索myParam和myOtherParam的值?

2 个答案:

答案 0 :(得分:3)

解析位置。 [window.location为您提供当前文档的位置]

var paramsString = window.location.split("?")[1];
var paramValues = paramsString.split("&");
var params = new Array();
for(var param in paramValues){
    var paramValue = param.split("=");
    params[paramValue[0]] = paramValue[1];
}

使用params:

var myParam = params.myParam; //or
var myOtherParam = params['myOtherParam'];

答案 1 :(得分:0)

你也可以看看这篇文章,它展示了一个漂亮,简单和小巧的功能:

function $_GET(param) {
var vars = {};
window.location.href.replace( location.hash, '' ).replace( 
    /[?&]+([^=&]+)=?([^&]*)?/gi, // regexp
    function( m, key, value ) { // callback
        vars[key] = value !== undefined ? value : '';
    }
);

if ( param ) {
    return vars[param] ? vars[param] : null;    
}
return vars;}

然后你可以用类似于PHP的方式获取变量:

name = $_GET('name')

以下是完整文章:read URL params with Javascript