【发布时间】:2014-07-19 17:37:27
【问题描述】:
我正在动态创建一个对话框。我接下来要做的是将一些输入与.datepicker() 绑定,但我似乎根本找不到输入。我在这里错过了什么?
function createDialog(top, dialog_width, data) {
$('<div></div>')
.addClass('add-dialog')
.appendTo('body')
.dialog({
title: 'test',
closeText: '<i class="fa fa-times"></i>',
close: function () {
$(this).remove();
},
open: function (event, ui) {
//has the full html with the inputs
console.log(this);
//trying to get them
var inputs = $(this).find('input');
console.log(inputs.length);
//also tried this, no luck
//$(this).parent().promise().done(function() {
// var t = $(this).find('input');
//});
},
modal: true,
width: dialog_width,
position: ['center', (top - 12)],
draggable: false,
resizable: false
}).html(data);
}
【问题讨论】:
-
在打开对话框回调之前附加 html(data),你没有得到元素,因为 add-dialog div 中没有 html
-
@ramby,确实如此。
console.log(this);显示完整的 html -
在下面查看我的答案
标签: javascript jquery html jquery-ui jquery-dialog