我有一个如下输入,我想用查询字符串的值预先填充值,这样当我访问example.com/my.html?phone=12345时,值1234应显示在输入字段中。对不起,如果我的问题看起来很愚蠢,但我对jquery和javascript没有任何经验
<input type="phone" value="" class="form-control" id="phonenumber"
placeholder="Phone number">
答案 0 :(得分:7)
您可以使用此脚本:
function getParameterByName(name) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
设置值:
$("#phonenumber").val(getParameterByName("phone"));
参考: How can I get query string values in JavaScript?
答案 1 :(得分:1)
使用javascript split()
var test = 'example.com/my.html?phone=12345';
var res = test.split("=");
$("#phonenumber").val(res[1]);
注意:如果您在网址中只有一个查询字符串,请使用此选项。
答案 2 :(得分:1)
这是一种简单的javascript方式
function getQueryVariable(variable)
{
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;i<vars.length;i++) {
var pair = vars[i].split("=");
if(pair[0] == variable){return pair[1];}
}
return(false);
}
答案 3 :(得分:-2)
以下示例可以帮助您
var location = 'example.com/my.html?phone=12345';
var phoneNo = location.split("?phone=")[1];