2010-09-24 80 views
11

可能重复:
get querystring with jQueryjQuery的查询字符串

如何获得查询字符串到使用jQuery一个文本框中的值?

让我们说的网址是http://intranet/page1.php?q=hello

我想“你好”是在文本框中。

+0

看到这个问题:http://stackoverflow.com/q/901115/140185这一个:http://stackoverflow.com/q/585852/140185 – 2010-09-24 14:40:43

+0

如果你传递GET变量,你使用什么服务器端脚本语言?如果你有一个服务器端脚本可用,那么使用PHP(或其他任何)来填充'textarea'可能比js/jQuery更容易。 – 2010-09-24 15:09:27

回答

29

在我programming archive我有this function

function querystring(key) { 
    var re=new RegExp('(?:\\?|&)'+key+'=(.*?)(?=&|$)','gi'); 
    var r=[], m; 
    while ((m=re.exec(document.location.search)) != null) r.push(m[1]); 
    return r; 
} 

你可以使用它来获取查询字符串值和pu吨一个文本框:

$('#SomeTextbox').val(querystring('q')); 
7

使用在the answer列出this question功能:

function getParameterByName(name) 
{ 
    name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); 
    var regexS = "[\\?&]"+name+"=([^&#]*)"; 
    var regex = new RegExp(regexS); 
    var results = regex.exec(window.location.href); 
    if(results == null) 
    return ""; 
    else 
    return decodeURIComponent(results[1].replace(/\+/g, " ")); 
} 

然后就是做这样的事情:

var qParam = getParameterByName('q'); 
$('#mytextbox').val(qParam);