jquery-ui:用.load(url)载入一段HTML,包含了一个DIV,此DIV.dialog()不起效果!

lc1055 2011-05-20 04:39:14
A页面含有代码:

$(div1).load(B.html,null,function(){$(div2).dialog(...);})

B页面含有代码:

<div id=div2>

大致意思就是A页面用load动态载入一个层div2,然后div2已dialog的形式显示出来。但是现在div2.dialog()不起作用了

我在A页面直接放了一个div3,用div3.dialog()有用的。
...全文
955 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lc1055 2011-05-26
  • 打赏
  • 举报
回复
自己解决了

$.dialog({配置参数});没有和$.dialog("open");放在一个函数块下,导致$.dialog("open");开启的时候找不到配置参数,因而看不到效果!
lc1055 2011-05-23
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 showenxxx 的回复:]
http://jqapi.com/#p=load
根据文档理解,那个function是页面数据读取完毕,但是还没有放到div里面,搂住在function那里设个断点,
看$("#div2").length的值是多少
[/Quote]
我改成这样:

$("#div1").load("B.html",null,function(){
alert($("#div2").html());
});

这时已经能把div2里面的内容显示出来了~
lc1055 2011-05-21
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 showenxxx 的回复:]
在B页面加载完之后完之后,重新邦定.dialog()
[/Quote]
$("#div1").load("B.html",null,function(){$("#div2").dialog('open');});
这句代码不就是加载完再绑定么?
showenxxx 2011-05-21
  • 打赏
  • 举报
回复
http://jqapi.com/#p=load
根据文档理解,那个function是页面数据读取完毕,但是还没有放到div里面,搂住在function那里设个断点,
看$("#div2").length的值是多少
showenxxx 2011-05-20
  • 打赏
  • 举报
回复
在B页面加载完之后完之后,重新邦定.dialog()
lc1055 2011-05-20
  • 打赏
  • 举报
回复
.live()可以绑定事件,如click等,
但是我这个dialog不属于常规的事件吧~
月之轮回2009 2011-05-20
  • 打赏
  • 举报
回复
这个问题我遇到过,给指定id或class的元素绑定(bind)事件时,对于改变或新加(就是使用.LOAD载入)的元素,事件不会起作用,这时我们就要用jquery的live()函数,它可以让子元素继承父元素的事件。

具体用法你查一下jquery的.live()事件的用法就行了。

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧