Jquery 禁用重复div中的所有按钮

Jquery 禁用重复div中的所有按钮,jquery,jquery-templates,Jquery,Jquery Templates,所以我有一个Jquery模板,可以向用户显示多个结果,结果的底部是一个div,我用它来存储一些按钮 现在,根据记录的状态,我想隐藏e div中的所有按钮,但由于某些原因,以下操作不起作用: $('#violationFooter').find('input,button').prop('disabled', true); 我尝试了其他几种设置,下面是隐藏父div $('#violationResults').hide(); 但这也没什么用 $('#violationResults

所以我有一个Jquery模板,可以向用户显示多个结果,结果的底部是一个div,我用它来存储一些按钮

现在,根据记录的状态,我想隐藏e div中的所有按钮,但由于某些原因,以下操作不起作用:

$('#violationFooter').find('input,button').prop('disabled', true);
我尝试了其他几种设置,下面是隐藏父div

   $('#violationResults').hide();
但这也没什么用

   $('#violationResults #violationFooter').hide();
我不知所措

编辑


违反
*编辑*

这是填充模板的调用

function GetViolations(messageId) {

            $.ajax({
                type: "POST",
                url: "Default.aspx/GetViolationMessages",
                cache: false,
                data: JSON.stringify({ messageId: messageId }),
                contentType: "application/json; charset-utf-8",
                dataType: "json",
                error:
                    function(xhr) {

                        var contentType = xhr.getResponseHeader("Content-Type");
                        if (xhr.status === 401 && contentType.toLowerCase().indexOf("text/html") >= 0) {
                            window.location.reload();
                        }
                    },
                success: function(msg) {
                    // Need to work out a way of refreshing the screen

                    $.each(msg.d, function(index, item) {

                        $('#violationtmpl').tmpl(item).appendTo('#violationResults');

                    });


                    var panels = $('.user-infos');
                    var panelsButton = $('.dropdown-user');
                    panels.hide();

                    //Click dropdown
                    panelsButton.click(function() {
                        //get data-for attribute
                        var dataFor = $(this).attr('data-for');
                        var idFor = $(dataFor);

                        //current button
                        var currentButton = $(this);
                        idFor.slideToggle(400, function() {
                            //Completed slidetoggle
                            if (idFor.is(':visible')) {
                                currentButton.html('<i class="glyphicon glyphicon-chevron-up text-muted"></i>');
                            } else {
                                currentButton.html('<i class="glyphicon glyphicon-chevron-down text-muted"></i>');
                            }
                        });
                    });

                    $('[data-toggle="tooltip"]').tooltip();
                }
            });
        };
函数GetViolations(messageId){
$.ajax({
类型:“POST”,
url:“Default.aspx/GetViolationMessages”,
cache:false,
数据:JSON.stringify({messageId:messageId}),
contentType:“application/json;charset-utf-8”,
数据类型:“json”,
错误:
函数(xhr){
var contentType=xhr.getResponseHeader(“内容类型”);
if(xhr.status==401&&contentType.toLowerCase().indexOf(“text/html”)>=0){
window.location.reload();
}
},
成功:功能(msg){
//需要想出一种刷新屏幕的方法吗
$.each(msg.d,函数(索引,项){
$(“#violationtmpl').tmpl(项目)。附录(“#violationResults”);
});
变量面板=$('.user infos');
var panelsButton=$('.dropdown user');
面板。隐藏();
//单击下拉列表
panelsButton.单击(函数(){
//获取属性的数据
var dataFor=$(this.attr('data-for');
var idFor=$(dataFor);
//当前按钮
var currentButton=$(此);
idFor.slideToggle(400,函数(){
//完成滑动切换
if(idFor.is(':visible')){
html(“”);
}否则{
html(“”);
}
});
});
$('[data toggle=“tooltip”]')。tooltip();
}
});
};
编辑

呈现的HTML图像

html

<button class="btn  btn-success btn-xs hideButton" type="button" data-toggle="tooltip" data-original-title="Good guy?" onclick="" >
  <i class="fa fa-user-md"></i>
</button>
<button class="btn  btn-success btn-xs" type="button" data-toggle="tooltip" data-original-title="Good guy?" onclick="" >
  <i class="fa fa-user-md"></i>
</button>

你可以将自己的类添加到需要隐藏的按钮中。。例如,这里第一个按钮将隐藏第二个按钮将不会

试试这个:

$('#violationFooter button').hide()
或者更好

$('.panel-footer button').hide()

好的,看来我是在试图隐藏一些不存在的东西:-)我跟踪按钮渲染的位置,并试图在绘制按钮之前隐藏它们,嘟嘟


谢谢大家的支持

你能用fiddlejs发布你的html吗?做一个fiddlejs来演示你的问题检查更新的答案…或者任何这些Chriz。奇怪的是这些都能正常工作?也许这就是JQuery模板呈现按钮的方式——什么都没有,这太奇怪了。我可以隐藏父pnl,但模板codeChriz中没有任何内容,请参见呈现的HTMLabove@CSharpNewBee我在我的本地系统中进行了测试,所有这些都可以实现。。对不起,我没有得到y,它不适合你。是因为有倍数吗?基本上,上面的while html是用foreach包装的,因此有不止一个div id=violationFooter的实例,我知道它应该是唯一的,但我认为类调用会起作用。@csharpnewee您能创建一个呈现html的JSFIDLE并将链接放在这里或您的问题中吗?谢谢,没有阳光。这毫无意义。我将尝试找到一个工具来监视dom,一定有什么东西被覆盖了it@CSharpNewBee:你为什么不把呈现的HTML放在一把小提琴里并分享链接呢?嗨,桑尼,我找到了罪魁祸首。
$('#violationFooter button').hide()
$('.panel-footer button').hide()