2013-08-19 28 views
0

我想确定页面上的任何表格行(包括AJAXed内容)是否具有“透支”类,如果页面上有ANY,隐藏某个按钮。这是我正在使用的代码,但它不起作用。我不知道我使用的代码是否考虑了动态数据,或者它只在页面加载时运行。试图隐藏提交如果透支

(function() { 
    if($('tr').hasClass('overdraft'){ $('#btnSAMSubmit').hide(); } // end if 
})(); 
+1

此外,你可以考虑棉短绒,如[JS林特(http://www.jslint.com /) – Richard

+0

您可能想考虑禁用该按钮而不是隐藏它。当按钮出现或消失时,这样可以防止布局发生变化,而禁用的按钮更清楚地表明“您无法提交此表单”,而不是丢失按钮。 –

+0

此外,如果没有此代码所处的上下文,我们无法回答这是动态执行还是仅在页面加载时执行。 '(function(){...})();'东西只是一个范围包装;里面的代码立即在其上下文中执行。顺便说一句,通常我看到这种封装用于模块,并与jQuery用户我看到的形式'(函数($){...})(jQuery);''让包装的代码使用'$' 'jQuery'即使'$'被重新定义为封闭网页中的其他内容。 –

回答

2
if($('.overdraft').length > 0) { 
    $('#btnSAMSubmit').hide(); 
} 
+0

更简洁!谢谢! – jgravois

4

乍一看,你错过了一个)

if($('tr').hasClass('overdraft')) // <-- This last) is missed on your code 
{ 
    $('#btnSAMSubmit').hide(); 
} 
+0

你的第一个网站比我的第2,181网站好。我会在11分钟内接受答复。 – jgravois