尝试
div.load(url, function() {
div.children().each(function(){
// what do expect this to be below?
// this will be a child element here, so need
// to wrap to get a jQuery object
$(this).datepicker({dateFormat:"yy-m-d"});
});
div.appendTo("#foos_container");
});
根据您的编辑,尝试以下操作。
add_foo = function(url) {
// Clickable
var numfoos = $("#foos_container > div.foo").length + 1;
var foo_id = numfoos + "-foo";
var div = $("<div></div>").attr("id",foo_id).addClass("foo");
div.appendTo("#foos_container").load(url, function() {
div.children().each(function(){
// what do expect this to be below?
// this will be a child element here, so need
// to wrap to get a jQuery object
$(this).datepicker({dateFormat:"yy-m-d"});
});
};
你期待什么
this
待在
div.children().each( ...)
是吗?
编辑:
这是一个
Working Demo
它模拟了我相信你正在努力实现的目标。添加
编辑
到URL以查看代码并使用它(下面的示例)。
<a id="add">Click me to add a div via AJAX Load</a>
<div id="foos_container"></div>
$(function() {
$('#add').click(function() {
var numfoos = $("#foos_container > div.foo").length + 1;
var foo_id = numfoos + "-foo";
var div = $("<div></div>").attr("id",foo_id).addClass("foo");
div.appendTo("#foos_container").load("http://jsbin.com/ejalo", function() {
div.children().each(function(){
$(this).datepicker({dateFormat:"yy-m-d"});
});
});
});
});