Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用循环计数器修改超链接构造函数的值_Javascript_Html_Dom - Fatal编程技术网

Javascript 如何使用循环计数器修改超链接构造函数的值

Javascript 如何使用循环计数器修改超链接构造函数的值,javascript,html,dom,Javascript,Html,Dom,我试图做的是,在使用for循环时,使用循环计数器I修改已经在html元素中为其分配了基数的值。这样我就可以用不同的值构建多个超链接。下面是我的html代码 var inputs=document.querySelectorAll(“输入”); var-id=[]; var值=[]; var-links=[]; var MasLink=“”; var words=[] 对于(i=0;i

我试图做的是,在使用for循环时,使用循环计数器
I
修改已经在html元素中为其分配了基数的值。这样我就可以用不同的值构建多个超链接。下面是我的html代码

var inputs=document.querySelectorAll(“输入”);
var-id=[];
var值=[];
var-links=[];
var MasLink=“”;
var words=[]
对于(i=0;i
” document.getElementById(“BuiltLink”).innerHTML=MasLink }

公钥:
私钥:
纬度:
经度:
海拔高度:
标题:
速度:
外部温度:
内部温度:
电池电压:
时间:
分钟:
第二:
年份:
月份:
日期:
给我链接!

您应该将i变量的值保留在BuildLink函数作用域不同的另一个变量中,因为每次调用此函数时,所有值都会重置

var increase = 0;

function BuildLink() {
    var inputs = document.querySelectorAll("input");
    var ids = [];
    var values = [];
    var links = [];
    var MasLink = "";
    var words = [];
    for (i = 0; i < inputs.length; i++) {
        ids[i] = inputs[i].id;
        increase = increase + i;
        values[i] = (inputs[i].value * (1 + (0.1 * increase)));
        console.log(i, values);
    };
    for (i = 0; i < inputs.length; i++) {
        links[i] = "http://data.sparkfun.com/input/public_key?private_key=private_key&altitude=" + values[2] + "&battry_voltage=" + values[3] + "&day=" + values[4] + "&external_temp=" + values[5] + "&heading=" + values[6] + "&internal_temp=" + values[7] + "&latitude=" + values[8] + "&longitude=" + values[9] + "&minute=" + values[10] + "&month=" + values[11] + "&second=" + values[12] + "&speed=" + values[13] + "&year=" + values[14];
        words[i] = "<small>" + ids[2] + ":" + values[2] + ", " + ids[3] + ":" + values[3] + ", " + ids[4] + ":" + values[4] + ", " + ids[5] + ":" + values[5] + ", " + ids[6] + ":" + values[6] + ", " + ids[7] + ":" + values[7] + ", " + ids[8] + ":" + values[8] + ", " + ids[9] + ":" + values[9] + ", " + ids[10] + ":" + values[10] + ", " + ids[11] + ":" + values[11] + ", " + ids[12] + ":" + values[12] + ", " + ids[13] + ":" + values[13] + ", " + ids[14] + ":" + values[14] + ", " + ids[15] + ":" + values[15] + ", " + "</small>"
        MasLink += "<a href=" + links[i] + ">" + words[i] + "</a><br><br>"
        document.getElementById("BuiltLink").innerHTML = MasLink;
    }
}
var增加=0;
函数BuildLink(){
var输入=document.querySelectorAll(“输入”);
var-id=[];
var值=[];
var-links=[];
var MasLink=“”;
var-words=[];
对于(i=0;i
” document.getElementById(“BuiltLink”).innerHTML=MasLink; } }

在我看来,你应该使用Math.random来生成随机值,而不是仅仅增加一个变量。

在编写这段代码数小时后,我发现我最初的思维过程是错误的。所以我删除了代码并重新编写了它。基本上,我必须坐下来,在一块巨大的白板上实际绘制一个概念。这是一个带有完成的代码


我希望这也能帮助其他人。请随时问我问题。

谢谢你的回答,大多数情况下,当我需要更改值时,我会使用Math.random。但这只是需要基于gps位置的值的项目的一部分。整个项目基本上是一个高级地图api,用于跟踪天气气球。