动态地将变量添加到URL

时间:2013-07-12 02:17:52

标签: javascript variables dynamic

我试图通过动态将变量动态传递到URL来动态地将部件添加到URL中,例如在下面的代码中。如何让下面的代码工作,以便URL看起来像这样:

 http://www.test.com/test/Test_1/ato.50/[atc1.100/atc2.200/atc3.RandomNumber/atc3.RandomNumber/atc3.RandomNumber/atc4.400

其中RandomNumber是使用Math.floor(Math.random() * 10 * 10());

随机生成的数字
  

(将数字传递给atc3的重复是故意的。)

代码:

<html>
<body>
<script>
var orderID = 50;
var Red = 100;
var Blue = 200;
var Green = [Math.floor(Math.random() * 10 * 10), Math.floor(Math.random() * 10 * 10), Math.floor(Math.random() * 10 * 10)];
var Yellow = 400;

var tag = '<s'+'cript language="JavaScript" src="http://www.test.com/test/Test_1/ato.' + orderID + '/[atc1.' + Red + '/atc2.' + Blue + '/atc3.' + Green[0];

i = 1;
while (i < Green.length){
    var tag_two[i] ='/atc3.' + Green[i];
}
var tag_three ='/atc4.' + Yellow + ']"></s'+'cript>';
document.write(tag);

for (i = 0, i < Green.length, i++){
    document.write(tag_two[i]);
}
document.write(tag_three);
</script>
</body>
</html>

谢谢!

2 个答案:

答案 0 :(得分:1)

我在您的代码中发现了一些问题。所以我纠正了它们,这是你的代码。

<html>
<body>

<script>
var orderID = 50;
var Red = 100;
var Blue = 200;
var Green = new Array(Math.floor(Math.random() * 10 * 10), Math.floor(Math.random() * 10 * 10), Math.floor(Math.random() * 10 * 10));
var Yellow = 400;

var tag = '<s'+'cript language="JavaScript" src="http://www.test.com/test/Test_1/ato.' + orderID + '/[atc1.' + Red + '/atc2.' + Blue + '/atc3.' + Green[0];

i = 1;
var tag_two=new Array();
while (i < Green.length){

tag_two[i] ='/atc3.' + Green[i];
i++;
}

var tag_three ='/atc4.' + Yellow + ']"></s'+'cript>';


document.write(tag);

for (i = 0; i < Green.length; i++){

document.write(tag_two[i]);

}

document.write(tag_three);
</script>

</body>
</html>

向url添加变量的方式似乎是正确的。可以使用简单的连接运算符'+'

传递变量

答案 1 :(得分:1)

不必创建新变量,而是必须将字符串连接到现有变量:

这是工作示例http://jsfiddle.net/afsar_zan/aAbD6/

示例代码

       var orderID = 50;
        var Red = 100;
        var Blue = 200;
        var Green = [Math.floor(Math.random() * 10 * 10), Math.floor(Math.random() * 10 * 10), Math.floor(Math.random() * 10 * 10)];
        var Yellow = 400;
        var i = 0;
        var tag = '<script language="JavaScript" src="http://www.test.com/test/Test_1/ato.' + orderID + '/[atc1.' + Red + '/atc2.' + Blue + '/atc3.' + Green[0];

        while (Green.length>i){
         tag  += '/atc3.' + Green[i];
            i++;
        }
        tag +='/atc4.' + Yellow + ']"></s'+'cript>';
        alert(tag);
相关问题