【发布时间】:2018-09-25 20:45:22
【问题描述】:
我想用 forEach 函数替换 for 循环,因为循环在 Splunk JavaScript 中不起作用。
for 循环不起作用的原因是我的 JavaScript 代码嵌入在 XML 中,当我在我的 JavaScript 代码中使用 < 或 > 字符时,由于它们而出现错误。
function myFunction() {
// Declare variables
var input, filter, ul, li, a, i;
input = document.getElementById("mySearch");
filter = input.value.toUpperCase();
ul = document.getElementById("myMenu");
li = ul.getElementsByTagName("li");
// Loop through all list items, and hide those who don't match the search query
for (i = 0; i < li.length; i++) {
a = li[i].getElementsByTagName("a")[0];
if (a.innerHTML.toUpperCase().indexOf(filter) > -1) {
li[i].style.display = "";
} else {
li[i].style.display = "none";
}
}
}
<input type="text" id="mySearch" onkeyup="myFunction()" placeholder="Search.." title="Type in a category">
<ul id="myMenu">
<li><a href="#">HTML</a></li>
<li><a href="#">CSS</a></li>
<li><a href="#">JavaScript</a></li>
<li><a href="#">PHP</a></li>
<li><a href="#">Python</a></li>
<li><a href="#">jQuery</a></li>
<li><a href="#">SQL</a></li>
<li><a href="#">Bootstrap</a></li>
<li><a href="#">Node.js</a></li>
</ul>
【问题讨论】:
-
这里的“不工作”是什么意思。
for循环是基本的 JS。并不是说我不会尽我所能摆脱它们,但是,它怎么不起作用? -
你可以在javascript中找到hereforEach的doc。
-
请同时显示此代码操作的简化 HTML。
-
请在您的问题中添加,包括正确的格式,而不是在 cmets 中。
-
我只是在问,因为这看起来可能是X Y problem。与其在不使用尖括号字符的情况下开发整个应用程序,不如先弄清楚为什么 Splunk 会在尖括号字符上阻塞。
标签: javascript splunk splunk-sdk