今天用到jquery ui里的dialog想做个删除前确认的功能,因为我的页面元素是动态添加的,并且不允许指定id,由于javascript基础实在差,卡了好久才想到可以把DOM对象先保存在全局(window)对象中再在dialog的回调方法里用$()转换成jquery包装集再开展。
类似编码如下:
Code
1$(function() {
2 var obj;
3 //初始化dialog
4 $("#dialog").dialog({
5 autoOpen: false,
6 resizable: false,
7 modal: true,
8 overlay: {
9 backgroundColor: '#000',
10 opacity: 0.5
11 },
12 buttons: {
13 '取消': function() {
14 obj=null;$(this).dialog('close');
15 },
16 '确定': function() {
17 $(obj).parent().parent().remove();
18 obj=null;$(this).dialog('close');
19 }
20 }
21 });
22 //保存当前点击的DOM对象并打开对话框
23 $(".editDelete").livequery('click',function(){
24 obj = this;
25 $("#dialog").dialog("open");
26 });
javascript居然执行时不一定会等方法返回才继续的。。FT...