脚本停止加载的形式工作 - jQuery的负载AJAX
问题描述:
我使用Drupal的和ihve使用jquery加载功能脚本停止加载的形式工作 - jQuery的负载AJAX
<div id='test'></div>
<a href='#' id='test2'>test</a>
所以successfuly加载的节点创建表单点击链接时,它会加载形式
var ajax_load = "loading...";
var loadUrl = "NODE_CREATE_PATH";
$("#test2").click(function(){
$("#test").html(ajax_load).load(loadUrl);
});
现在我的问题是像日期弹出窗口的所有脚本不适用于此loded窗体。有人建议我使用http://api.jquery.com/live/,但我不知道如何使用。
请帮忙
答
(),我们可以:)
例如
$(id).load(url, function(){
Drupal.attachBehaviors(this);
});
答
这是因为DOM正在重新加载新的HTML。因此你在这些节点上的绑定将不再起作用。
对于其他绑定,您可以使用http://api.jquery.com/on/(实时事件已弃用),但据我所知,不能用于日期选择器。
你可以做这样的事情:用Drupal.attachBehaviors
function bindStuff(node) {
node.find('.datepicker').datepicker();
// Do some more bindings here
}
$("#test2").click(function(){
$("#test").html(ajax_load).load(loadUrl, function() {
bindStuff($("#test"));
});
});
$("#example2").click(function(){
$("#example").html(ajax_load).load(loadUrl, function() {
bindStuff($("#example"));
});
});
感谢,但是这将是耗时..我想要使用它更多的形式,有没有简单的方法就像在Ajax负载,更改DOM – Serjas 2012-04-20 11:49:02
例如,Facebook如何做到这一点?绑定每个函数agaian并再次!我不这么认为 – Serjas 2012-04-20 11:51:36
对于事件和东西,你可以在事件类型上使用jQuery,但据我所知,不能用于datepicker。我用多种形式的示例更新了我的答案。 – 2012-04-20 12:03:05