如何使用JQuery获取GET和POST变量? [英] how to get GET and POST variables with JQuery?

查看:115
本文介绍了如何使用JQuery获取GET和POST变量?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何使用JQuery简单地获得 GET POST 值?

How do I simply get GET and POST values with JQuery?

我想做的是这样的:

$('#container-1 > ul').tabs().tabs('select', $_GET('selectedTabIndex'));


推荐答案

对于GET参数,您可以从<$获取它们c $ c> document.location.search :

For GET parameters, you can grab them from document.location.search:

var $_GET = {};

document.location.search.replace(/\??(?:([^=]+)=([^&]*)&?)/g, function () {
    function decode(s) {
        return decodeURIComponent(s.split("+").join(" "));
    }

    $_GET[decode(arguments[1])] = decode(arguments[2]);
});

document.write($_GET["test"]);

对于POST参数,您可以序列化 $ _ POST 将JSON格式的对象转换为< script> 标记:

For POST parameters, you can serialize the $_POST object in JSON format into a <script> tag:

<script type="text/javascript">
var $_POST = <?php echo json_encode($_POST); ?>;

document.write($_POST["test"]);
</script>

当你在(在服务器端做事)时,你可能会收集GET参数PHP也是:

While you're at it (doing things on server side), you might collect the GET parameters on PHP as well:

var $_GET = <?php echo json_encode($_GET); ?>;

注意:您需要PHP 5或更高版本才能使用内置 json_encode 功能。

Note: You'll need PHP version 5 or higher to use the built-in json_encode function.

更新: 这是一个更通用的实现:

Update: Here's a more generic implementation:

function getQueryParams(qs) {
    qs = qs.split("+").join(" ");
    var params = {},
        tokens,
        re = /[?&]?([^=]+)=([^&]*)/g;

    while (tokens = re.exec(qs)) {
        params[decodeURIComponent(tokens[1])]
            = decodeURIComponent(tokens[2]);
    }

    return params;
}

var $_GET = getQueryParams(document.location.search);

这篇关于如何使用JQuery获取GET和POST变量?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆