问题很简单。当我将变量放入数组中时,它不起作用。当我将变量写入到输入中时,它起作用了。如何将变量传递到数组中?
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";
}发布于 2017-08-18 23:21:10
JS中的数组开始从0索引到SIZE-1,所以这里的代码是错误的:
if(testW[testlength-1].value == ""){
testQ[0].style.display = "none";
}我不知道这是否完全解决了你的问题,但这肯定是一个错误
发布于 2017-08-18 23:18:56
testW[testlength]应为testW[testlength-1]
发布于 2017-08-18 23:21:49
testlength是列表的长度。当您尝试访问testWtestlength时,实际上是在最后一个元素之后访问不存在的元素,因为元素索引在0和testlength-1之间。
https://stackoverflow.com/questions/45759988
复制相似问题