应用UI按钮()方法无效

时间:2011-06-16 07:37:53

标签: javascript jquery jquery-ui

我创建了一个动态文本字段和按钮。我想在按钮上应用UI按钮方法,但它不起作用。以下是我的代码。

this.marketSymbolAddDialogObject
    = $('<b>Symbol:</b> <input type="text" id="symbolName" class="ui-widget ui-widget-content ui-corner-all"></input>'+
        '<button id="add_symbol">Add Symbol</button>'
        );    
var bt = this.marketSymbolAddDialogObject.find("button");
bt.button(); // **Not working**

我做错了什么。我也尝试过这个     $( “#add_symbol”)。按钮() 但没有工作。

3 个答案:

答案 0 :(得分:1)

“按钮”不是this.marketSymbolAddDialogObject的后代,因此对其执行find()将导致0个匹配的元素。使用filter(),如下所示:

var bt = this.marketSymbolAddDialogObject.filter("button");

<强>找到():

  

描述:获取后代   当前集合中的每个元素   匹配的元素,由a过滤   选择器,jQuery对象或元素。

过滤器():

  

描述:减少匹配的集合   元素与那些匹配的元素   选择器或传递函数的测试。

答案 1 :(得分:0)

我相信你需要在查找工作之前先将元素添加到DOM中。

答案 2 :(得分:0)

我不熟悉jquery的'button'函数,但是你可能会觉得有用的是附加你的jquery创建的DOM元素:

this.marketSymbolAddDialogObject
= $('<b>Symbol:</b> <input type="text" id="symbolName" class="ui-widget ui-widget-content ui-corner-all"></input>'+
    '<button id="add_symbol">Add Symbol</button>'
    ).appendTo('body');