0

在 PHP 中它是file.php?id=1然后$_GET['id'],但是在 jQuery 中它是怎样的呢?我试过跟随,但没有奏效。

// jQuery
$('id-' + $1).click(function() {
    // more code
}

// HTML
<div id="id-1">text</div>

我是GETjQuery 的新手,所以请善待:P

提前致谢。

4

3 回答 3

2

你应该解析 location.search:

var GET = {};
var params = location.search.substr(1).split("&");
for (var i=0; i < params.length; i++) {
    var par = params[i].split('=');
    GET[par[0]] = par[1];
}

$('#id-' + GET["id"]).click(function() {
    // more code
});
$(document).ready(function() {
    $('#id-' + GET["id"]).click(function() {
        $('#forecast').show().load('jquery-fetch/fetch-forecast.php?coor=' + GET["coor"] + '&d=' + $(this).attr('id'));
        $('#current').hide();
    });
});​

// HTML
<div id="id-1">text</div>
于 2012-04-11T22:05:28.523 回答
1

你的意思是 GUP(获取 url 参数)吗?

在 javascript 中,这与 GET 无关,GET 是浏览器用来制定对服务器的请求的一种方法。要从 JS 中获取 URL 参数,请执行以下操作:

var gup = function( name ) {
    var results = (new RegExp("[\\?&]"+name+"=([^&#]*)")).exec(window.location.href);
    if ( results == null ) {return ""}
    else {return results[1]}
};

其中 name 是您要检索的字符串。

$('id-' + $1).click(function() {
    var myId = gup("id");
}
于 2012-04-11T22:04:01.917 回答
0

这可能是您正在寻找的,虽然它只是纯 JS,但不确定 jQuery 是否有更简单的方法:

function gup( 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 results[1];
}

然后像这样使用它:

var id_param = gup( 'id' );

来自http://www.netlobo.com/url_query_string_javascript.html

于 2012-04-11T22:05:30.247 回答