我在js中有一个函数解析一个url并创建一个(paramName,value)的映射
代码如下:
var search = location.search.substring(1);
var data = {}
if(search!="")
{
var urlParams = JSON.parse('{"' + decodeURI(search).replace(/"/g, '\\"').replace(/&/g, '","').replace(/=/g, '":"') + '"}');
for (var key in urlParams) {
data[key] = urlParams[key];
}
}
现在这对于一个简单的网址来说效果很好 www.google.com?param1=2¶m4=hello
但它不适用于加密的网址 www.google.com?param1=XDTY-300Hbc=¶m4=hello
这里 param1 = XDTY-300Hbc = 最后包含一个=。 请帮忙
答案 0 :(得分:1)
试试这个:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<form id="frmTest">
<input type="text" name="price_min">Min
<input type="text" name="price_max">Max
</form>
<button id="btn">Test Serialize</button>