在网页上有一个文本框。我想从querystring中传递值并填充到文本框中。
我有一个jQuery函数成功捕获查询字符串值。这是我试图填入文本框的jQuery代码:
$(function() {
var keyword = getParameterByName('k');
alert(keyword);
$("#SearchBox input:text").eq(0).val(keyword);
});
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, " "));
}
以上代码工作正常。但是,如果我删除行alert(keyword)
,则不会填充文本框。如果我将alert(keyword)
移动到函数末尾,则文本框也不会被填充。
为什么?我想不出有什么理由警告线会影响结果。请给我一些想法。谢谢!