直接从 JavaScript 访问 GET?

2022-08-30 20:14:36

我想我可以使用PHP从JavaScript访问变量:$_GET

<script>
var to = $_GET['to'];
var from = $_GET['from'];
</script>
<script src="realScript" type="text/javascript"></script>

但也许它更简单。有没有办法直接从JS做到这一点?


答案 1

window.location.search

它将包含如下字符串:?foo=1&bar=2

要将其放入对象,您需要做的就是进行一些拆分:

var parts = window.location.search.substr(1).split("&");
var $_GET = {};
for (var i = 0; i < parts.length; i++) {
    var temp = parts[i].split("=");
    $_GET[decodeURIComponent(temp[0])] = decodeURIComponent(temp[1]);
}

alert($_GET['foo']); // 1
alert($_GET.bar);    // 2

答案 2

这是另一个想法:

<script type="text/javascript">

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

alert($_GET['some_key']);
// or
alert($_GET.some_key);

</script>