将URL参数值添加到输入框

时间:2013-10-09 20:32:40

标签: javascript jquery url

我有一个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"]);

  });

1 个答案:

答案 0 :(得分:1)

阅读本文:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions

您的问题是,正则表达式字符+给出了重复一次或多次前面的字符的指令。你得到的语法错误告诉你,你没有给它一个字符重复。

您是否尝试替换所有+个字符?如果是这样,您将需要使用\转义它。

您是否想说“一个或多个/字符”?同样,你也需要逃避它,因为/表示正则表达式的开始。