我有一个jQuery脚本,它接受一个URL参数并将值添加到输入框。
当网址是www.mysite.com/page/?number=10
的格式时,一切正常。当网址末尾的网址包含.php
时,脚本不起作用,例如www.mysite.com/page.php?number=10
。
我需要使用脚本才能使用.php
。
这是脚本:
jQuery(document).ready(function() {
(function($) {
jQuery.QueryString = (function(a) {
if (a == "") return {};
var b = {};
for (var i = 0; i < a.length; ++i)
{
var p=a[i].split('=');
if (p.length != 2) continue;
b[p[0]] = decodeURIComponent(p[1].replace(/+/g, " "));
}
return b;
})(window.location.search.substr(1).split('&'))
})(jQuery);
jQuery.QueryString["number"];
jQuery("#entry_2081224724").val(jQuery.QueryString["number"]);
});
答案 0 :(得分:1)
阅读本文:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions
您的问题是,正则表达式字符+
给出了重复一次或多次前面的字符的指令。你得到的语法错误告诉你,你没有给它一个字符重复。
您是否尝试替换所有+
个字符?如果是这样,您将需要使用\
转义它。
您是否想说“一个或多个/
字符”?同样,你也需要逃避它,因为/
表示正则表达式的开始。