从jQuery移动控制组中删除项

从jQuery移动控制组中删除项,jquery,jquery-mobile,Jquery,Jquery Mobile,我有一个控制组,里面有一些按钮。现在我想在运行时删除一个按钮 <div id="buttons" data-role="controlgroup" data-type="horizontal"> <button id="btn1">Do 1</button> <button id="btn2">Do 2</button> <button id="btn3">Do 3</button> &l

我有一个控制组,里面有一些按钮。现在我想在运行时删除一个按钮

<div id="buttons" data-role="controlgroup" data-type="horizontal">
    <button id="btn1">Do 1</button>
    <button id="btn2">Do 2</button>
    <button id="btn3">Do 3</button>
</div> 

$('#btn1').remove();
有人知道怎么做吗?

因为你没有按正确的顺序发射。你的小提琴本不该“上弦”的。iirc jQuery mobile的加载顺序很有趣。我把这个移到了nowrap(body),一切正常


因为你没有按正确的顺序发射。你的小提琴本不该“上弦”的。iirc jQuery mobile的加载顺序很有趣。我把这个移到了nowrap(body),一切正常

您可以删除事件处理程序“pagebeforecreate”中的元素

$(document).bind('pagebeforecreate', function(){
    $('#btn1').remove();
});
否则,如果要在以后的事件中删除它。你可以用另一种方式

 $(document).bind('pageshow', function(){ 
     $('div[data-role=controlgroup]').children().each(function(index, value){
        if(index === 0) {
           $(value).remove();
        }
     });
 });

您可以删除事件处理程序“pagebeforecreate”中的元素

$(document).bind('pagebeforecreate', function(){
    $('#btn1').remove();
});
否则,如果要在以后的事件中删除它。你可以用另一种方式

 $(document).bind('pageshow', function(){ 
     $('div[data-role=controlgroup]').children().each(function(index, value){
        if(index === 0) {
           $(value).remove();
        }
     });
 });


您会遇到什么错误?您还可以尝试隐藏它,因为您的JSFIDLE链接与question@rahul:嗯,我使用了其他人的链接并进行了编辑,但我知道这不起作用。你能告诉我们你收到的是什么类型的错误消息吗?我没有收到错误消息,按钮就是不起作用。(添加了正确的JSFIDLE)您得到了什么错误?您还可以尝试隐藏它,因为您的JSFIDLE链接与question@rahul:嗯,我使用了其他人的链接并进行了编辑,但我知道这不起作用。你能告诉我们你收到的是什么类型的错误消息吗?我没有收到错误消息,按钮就是不起作用。(添加了正确的JSFIDLE)太好了,如何在我的html页面中实现这一点?(而不是JSFIDLE)在您的附加信息中,我认为这是因为jQuery mobile在jQuery的加载方法之后加载(同样是iirc,我已经有一段时间没有使用jQM了),您将脚本包含在标记之前,而不是头部。并删除所有的$(function(){和$(document).ready(junkI测试它,它会工作。但是它会在加载时弄乱我页面的其余部分:(最好使用正确的加载方法,然后检查文档。太好了,我如何在我的html页面中实现这一点?(而不是JSFIDLE)从您的附加信息来看,这似乎是因为jQuery mobile在jQuery的加载方法之后加载(同样是iirc,我已经有一段时间没有使用jQM了),您将脚本包含在标记之前,而不是头。并删除所有$(function(){和$(document)。准备好了吗(junkI测试了一下,它就工作了。但是加载会把我页面的其余部分搞乱:(最好使用正确的加载方法,然后检查文档。在初始化之前,你不能调用controlgroup上的方法。在初始化之前,你不能调用controlgroup上的方法。)。