在 jQuery 中从某个索引循环访问列表到另一个索引

loop through list in jquery from certain index to another index

本文关键字:索引 循环 访问 另一个 列表 jQuery      更新时间:2023-09-26

伙计们,这是我第一次在 JQuery ...我正在尝试循环从 servlet 发送到 JSP 的 jquery 中的列表,从某个索引到另一个某个索引,但我没有这样做..这是我的代码

<script type="text/javascript">
<% List lst = (List) session.getAttribute("MyList");%>
  $(document).ready(function() {
    $("form").submit(function() {
        lst.each(function() {
            alert(this);
        });
    });
});
</script>

您可以使用常规的 Javascript for循环。

首先了解jQuery DOM选择是如何组成的。

如果将变量设置为 $("body") ,则该变量可以命名为 $myJquerySelection 。即使它有一个美元符号,它仍然是一个局部变量。美元符号变量名称是一种约定,显示变量等于 jQuery 选择。

jQuery选择实际上指的是一个DOM节点数组。请注意,所有 jQuery 选择都是数组,即使它们只包含一个元素,如 $("body")

所以你可以说var firstDOMnode = $myJquerySelection[0].这个firstDOMnode变量是一个 DOM 节点,而不是一个 jQuery 选择,所以不能在其上调用 jQuery 方法。要使其成为jQuery选择,只需将其包装在$()中即可。

请参阅以下示例:

var $jQuerySelection = $("a");
var firstDOMnode = $jQuerySelection[0];
var $firstDOMnode = $(firstDOMnode)

迭代时可以使用相同的方法:

var $manyDOMnodes = $("*");
for (var i = 0; i < 5; i++) {
  var currentDOMnode = $manyDOMnodes[i];
  var $currentDOMnode = $(currentDOMnode);
  $currentDOMnode.append("using a jquery method here")
}

可以在for循环中更改迭代的开始和结束索引。

此示例从 0 到 5,每个循环增加 1

您可以尝试$.each遍历元素列表。

JSFiddle.

function createList() {
  var html = "<ul>";
  for (var i = 0; i < 10; i++) {
    html += "<li class='list'>" + i + "</li>"
  }
  html += "</ul>";
  $("#content").append(html);
}
createList();
$(".btn").on("click", function updateElements() {
  $.each($(".list"), function(index, el) {
    if (index % 2 === 0) {
      $(el).toggleClass("selected");
    }
  })
});
.list {
  color: blue;
}
.selected {
  color: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<div id="content"></div>
<button class="btn">Updated Elements</button>