问题很简单。当我将变量带入数组时,它不起作用。当我将变量写入输入时,它可以工作。如何将变量传递给数组?
var testW = document.querySelectorAll("input[type='text']");
var testQ = document.getElementsByClassName("deleteObjectbyJS");
var testlength = testW.length;
if(testW[testlength].value == ""){
testQ[0].style.display = "none";
}
答案 0 :(得分:4)
JS中的数组开始从0
索引到SIZE-1
,所以你的代码错了:
if(testW[testlength-1].value == ""){
testQ[0].style.display = "none";
}
我不知道这是否完全解决了你的问题,但这肯定是一个错误
答案 1 :(得分:0)
testW[testlength]
应为testW[testlength-1]
答案 2 :(得分:0)
testlength是列表的长度。当您尝试访问testW [testlength]时,您实际访问最后一个元素之后的非现有元素,因为元素索引介于0和testlength-1之间。