Jquery“:empty”无效 - 检查所有<div>是否包含一些文本或空</div>

时间:2013-10-09 14:27:55

标签: javascript jquery ajax asp.net-mvc-3 partial-views

我在运行时生成了几个框,我想确认所有框是否为“空”,然后用户就无法继续。但是,如果甚至一个Box 包含正确的值(而不是Empty),那么用户应该可以继续。

我创建了以下代码:

$(document).ready (function () {
    setProceedState();

});

function setProceedState() {
    if ($('.type').length == $('.type:empty').length) {
        alert("Empty" + $(".type").html());
        $("#stepAutomapConfirm").attr("disabled", true);
        $("#stepAutomapConfirm").addClass("disabled").removeClass("active");
    } else {
        alert("NOT Empty" + $(".type").html());
        $("#stepAutomapConfirm").attr("disabled", false);
        $("#stepAutomapConfirm").addClass("active").removeClass("disabled");
    }
}

不知何故,这段代码在小提琴中工作得很好: http://jsfiddle.net/aasthatuteja/xJtAV/

但是在我的 MVC Partial View 页面上,它还没有完全正常工作:

如果方框是“空的”,它总是给我正确的警告,

但是当它生成包含运行时数据的框时,仍会显示“EMPTY”警告。我检查了“查看源代码” “和”检查元素“,在源代码中数据确实存在,然后,当我手动刷新页面后,它会提供正确的警告” NOT Empty “。

请建议我缺少哪些内容或 JQuery :empty”的替代方案,以使代码在 MVC Partial View 中运行!

如果您需要任何其他信息,请与我们联系!

1 个答案:

答案 0 :(得分:2)

您需要在生成框后重新执行您的功能,准备就绪仅适用于dom准备好的框。