如何通过URL传递2个JavaScript变量?

时间:2012-01-07 11:26:22

标签: javascript string variables

我正在尝试在url中传递2个变量值,之后将重定向该url。如何将它们插入JavaScript字符串中?

我有:

var a = document.getElementById("username_a").value;
var b = document.getElementById("username_b").value;

并想要类似:var string_url = "http://www.example.com/?{a}blabla={b}",然后以某种方式重定向。

在PHP中,我会使用该代码:<iframe src="http://www.example.com?query=<?php echo $the_variable;?>">

3 个答案:

答案 0 :(得分:6)

您可以在JavaScript中添加字符串,"a" + "b" == "ab"评估为true

所以你想要的可能是var string_url = "http://www.example.com/?" + a + "&blabla=" + b;

但你应该逃避vars,特别是如果他们来自input,所以试试

a = encodeURIComponent(a);
b = encodeURIComponent(b);

然后

var string_url = "http://www.example.com/?" + a + "&blabla=" + b;

要重定向,您可以使用window.location

window.location = string_url;

答案 1 :(得分:0)

使用&符号来分割变量

var string_url = "http://www.example.com/?" + "username_a=" + a + "&username_b=" + `b

可以变得更加复杂,但实质上就是你需要的东西

答案 2 :(得分:0)

JavaScript不进行字符串插值。你必须连接这些值。

var uri = "http://example.com/?" + encodeUriComponent(name_of_first_variable) + "=" + encodeUriComponent(value_of_first_variable) + '&' + encodeUriComponent(name_of_second_variable) + "=" + encodeUriComponent(value_of_second_variable);
location.href = uri;