这是我的代码块。
var events = new Array(4);
for (var j=3; j<events.length; j++){
events[j];
aA.setAttribute('href', '#events(j)');
}
我希望将事件(j)更改为3,并在调用函数后允许它增加1。问题是,#event(j)中的'j'被读作文本字符,不会将其作为数字插入。如何更改代码以解决此问题?
答案 0 :(得分:0)
不确定您在此处尝试实现的目标,但如果您想在[{
"columns": [{
"title": "NAME"
}, {
"title": "COUNTY"
}],
"data": [
["John Doe", "Fresno"],
["Billy", "Fresno"],
["Tom", "Kern"],
["King Smith", "Kings"]
]
}]
调用中设置j
动态,则应使用加号event()
符号将变量与字符串连接起来,因为它现在(用引号括起来),它将被视为字符串+
:
j
希望这有帮助。
答案 1 :(得分:0)
events[j];
在这里是一个空白的陈述;它什么都没做。你正在读取数组中的值,但没有用它做任何事情。
'#events(j)'
被解释为字符串;请注意它周围的引号。要使用j
的值而不是字母,您需要将它移到字符串之外并以这种方式连接它们:
aA.setAttribute('href', '#events(' + j + ')'); // The string '#events(', then the value of j, then a closing brace
答案 2 :(得分:0)
如果您所做的只是更改元素的href
以匹配数组的最后一个索引的数量,则可以删除for循环并将其替换为一行代码:
var events = new Array(4);
aA.setAttribute('href', '#events(' + events.length - 1 + ')');