繁体   English   中英

jQuery每个功能只能工作一次

[英]Jquery each function only working once

我有以下jQuery函数。 它只会更新第一行,然后停止。 奇怪的是,如果我把线拔掉了:

$("#prev_loan_approval_date").html("Not Yet Approved");

并替换为每行触发的警报。 有什么理由会发生这种情况。 我以为它可能不会在下一次迭代中返回true,因为我更改了文本值,但这是针对上一行的,因此下一行仍应返回true并更改值。

$(document).ready(function() {
    $('.loan_history_application > tbody  > tr').each(function() 
    {
        if ($("#prev_loan_approval_date").text() == "01/01/1900")
        {
            $("#prev_loan_approval_date").html("Not Yet Approved");
        };
    });

tr有一个孩子“ #prev_loan_approval_date”? 如果是,您必须写

$(document).ready(function() {
    $('.loan_history_application > tbody  > tr').each(function() 
    {
        if ($(this).find("#prev_loan_approval_date").text() == "01/01/1900")
        {
            $(this).find("#prev_loan_approval_date").html("Not Yet Approved");
        };
    });

问题可能是您在$("#prev_loan_approval_date").html("Not Yet Approved");使用ID而不是类$("#prev_loan_approval_date").html("Not Yet Approved"); 因此它只会更新第一行。

更改为:

$(".prev_loan_approval_date").html("Not Yet Approved");

并确保您还更改ID以在HTML中进行分类。

如果您有多个具有相同ID的商品,则无法使用。 ID应该是唯一的。 将它们更改为class并更改您的代码:

$(".prev_loan_approval_date").html("Not Yet Approved");

完整代码:

$(document).ready(function() {
    $('.loan_history_application > tbody  > tr').each(function() {
        if ($(this).find(".prev_loan_approval_date").text() == "01/01/1900")
            $(this).find(".prev_loan_approval_date").html("Not Yet Approved");
    });
});

认为下一次迭代可能不会返回true,因为我更改了文本值,但这是针对上一行的

不,这不适用于上一行。 这里有几处错误。 首先,您将ID用于似乎多次发生的事情(ID必须是唯一的)。 您应该使用一个类。

其次,您要在其中更改文本的地方-您不是仅针对该行进行更改。 总是每一行上这样做。

$(document).ready(function() {
$('.loan_history_application > tbody  > tr').each(function() {
    if ($(".prev_loan_approval_date", this).text() == "01/01/1900")
    {
        $(".prev_loan_approval_date",this).html("Not Yet Approved");
    };
});

然后在您的HTML id='prev_load_approval_date'更改为class='prev_loan_approval_date'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM