动态添加jqueryui按钮

动态添加jqueryui按钮,jquery,Jquery,我有一个javascript函数,可以删除现有的按钮并添加新的按钮 代码如下: function FunctionName(){ ("button").remove(); // This works fine. //but however, with the following add code, I don;t get a jquery ui button. var element = document.createElement("input");

我有一个javascript函数,可以删除现有的按钮并添加新的按钮

代码如下:

 function FunctionName(){
     ("button").remove();
     // This works fine.
     //but however, with the following add code, I don;t get a jquery ui button.
     var element  = document.createElement("input");
     element.setAttribute("type","button");
     // other code
     divName = get <div> by ID;
     divName.appendChiled(element);
 }
有没有办法动态添加jquery ui按钮:

比如:

divName.addbutton


它不起作用…

非常确定,您可以通过调用按钮来用jQuery UI对任何输入进行按钮化


要使用jQuery添加jQuery UI按钮,请执行以下操作:

$('#selector') // Replace this selector with one suitable for you  
  .append('<input type="button" value="My button">') // Create the element  
  .button() // Ask jQuery UI to buttonize it  
  .click(function(){ alert('I was clicked!');}); // Add a click handler
默认情况下是这样工作的,不会对HTML进行被覆盖的黑客攻击

您可以在DOM准备就绪之前将按钮创建为变量

var $button = $.ninja.button({
  html: 'Post Your Answer'
}).select(function () {
  // Your action here.
});
当DOM准备好后,将其附加到您希望按钮的任何位置

$('body').append($button);

我刚刚用下面的代码动态创建了一个按钮。关键部分是.按钮部分,它似乎对我很有用

var self = this;
var exitButton = $(document.createElement("a"));
exitButton.attr({
    'href': '#',
    'id': 'exitSlideshowButton',
});
exitButton.click(function(event){
    event.preventDefault();
    self.exitSlideshow();
});
exitButton.text("Exit Slideshow Mode")
exitButton.button();
exitButton.appendTo("body");

这个代码对我有用

$'selector'.append


$'selector'.clickfunction{alert'I was clicked!';}

我认为@Stony很接近,除了.button和.click方法被添加到原始选择器元素中,而不是实际的按钮。您应该为按钮创建一个id,然后选择该按钮和呼叫按钮。单击该按钮


这可能会导致该帖子下评论的调用按钮出现某种异常。

我从@Stony申请,它对我有效

function addMyButton(btID){
    var temp = "<button id='" + btID + "'>My Button</button>";
    $( "#selector" ).html(temp);
    $( "#" + btID )
        .button()
        .click(function(){
            alert( "I was clicked!");
        });
}

@a-dilla:按钮没有出现在该语句中。至少一个空白按钮或它的标志必须出现…@a-dilla:同样的问题。。获取一个普通按钮可能而不是删除。您应该调用replaceWithWhatch-you-what-your-button-to-be.button此获取一个:未捕获类型错误:对象没有jQuery位于的方法“button”。不应使用button。移除它,它就起作用了。嗯,。按钮来自jQuery UI,而不是jQuery核心,所以不确定是什么导致了您看到的差异。我喜欢这个答案,因为它只使用jQuery而不是jQuery UI
function addMyButton(btID){
    var temp = "<button id='" + btID + "'>My Button</button>";
    $( "#selector" ).html(temp);
    $( "#" + btID )
        .button()
        .click(function(){
            alert( "I was clicked!");
        });
}