Javascript For循环将每个循环重复到下一个循环
我试图通过使用循环动态调整Javascript For循环将每个循环重复到下一个循环,javascript,html,function,loops,output,Javascript,Html,Function,Loops,Output,我试图通过使用循环动态调整document.getElementById(divID)。这似乎奏效了……有点 它一直在循环,你将在下面的截图中看到 let searchresult = function(response) { let output =""; for (let j = 0; j < response.length; j++) { let divID = response[j].resortcode + 'results';
document.getElementById(divID)
。这似乎奏效了……有点
它一直在循环,你将在下面的截图中看到
let searchresult = function(response) {
let output ="";
for (let j = 0; j < response.length; j++) {
let divID = response[j].resortcode + 'results';
let container = document.getElementById(divID);
output +=
`
<div class="${response[j].resortcode} ${response[j].roomcode}">
</div>
`;
console.log(container);
$(container).html(output);
}
};
let searchresult=函数(响应){
让输出=”;
对于(设j=0;j
我将容器div设置为响应[j]。restorcode
,但我认为通过使用document.getElementById(divID)
,它将只允许在div中包含相应的restorcode
请注意,它还多次循环getElementByID
。
我希望输出到我的html文件中的一个预先制作好的div id(确实如此,它只是不断重复)。然后循环结果
每次迭代时都会添加变量输出
,并且从不重置,因此当您将html设置为输出
时,它包含以前的每次迭代
您可以通过获取innerHTML并添加到而不是使用output
变量来解决此问题
您还可以将represtcode
存储到,然后将控制台中。最后将这些容器注销
let searchresult=函数(响应){
让代码=新集合();
对于(设j=0;j${response[j].roomname}-${response[j].viewname}
`;
}
RestoreCodes.forEach(函数(RestoreCode){
console.log(document.getElementById(restartcode+“results”);
};
};
我尝试了这个方法,但它停止了度假区循环中的每个房间。我编辑了我的问题,希望澄清问题。但是,当我在for循环中移动输出时,它只在每个度假区抓住一个房间,然后循环通过。@BunsenHoneydew在重新阅读了你的问题后,我想我找到了你想要的。现在编辑我的答案(可能需要一段时间)@BunsenHoneydew我现在完成了,请检查修改后的回答要清除所有结果容器,您首先需要更改一些内容:将格式从RESCODEresults
更改为results RESCODE
(SSRresults
更改为results SSR
)。这样,您就可以使用一个特殊的选择器来选择具有以结果-
开头的类的每个div,div[class^=“results-”],div[class*=“results-”]
。您还必须更改我答案中的一些代码才能更改为新格式。然后您可以创建一个函数来清除所有结果容器。例如,请参见。(基于)我知道了!我附加了onclick=“clearAllResults”
“我的搜索”按钮触发我的ajax请求。这似乎起作用了……再次感谢你,你是我的救星。