在对话框中加载ajax响应后第二次单击时,不会触发对话框

时间:2013-03-26 05:56:24

标签: jquery jquery-ui-dialog

var value;
$("#multipleids").live("dblclick", function(){  
    value =$(this).attr('id');  
    $.ajax({
        type:"post",
        url: "ajax.php",                        
        data:"value="+value,
        success: function(data){
            $("#dialog").html(data);
        }   
    });
    $("#dialog").dialog(
    {
        title: 'title',
        autoOpen:true,          
        closeOnEscape: true,
        width:500,
        height:500,
        resizable: false,
        draggable: false,
        open: function() {             
            })
        }       
    });

});

hie ...点击打开一个包含ajax调用结果的对话框..第二次点击时对话框没有打开。当我使用autoOpen:false属性时...对话框根本没有显示....任何人都可以建议如何解决这个问题。谢谢。

2 个答案:

答案 0 :(得分:0)

我更改了部分代码,但没有时间对其进行测试,我的代码几乎都喜欢这个并运行良好。你可以尝试一下:

var value;

var oTable=$("#dialog").dialog(
    {
        title: 'title',
        autoOpen:false,          
        closeOnEscape: true,
        width:500,
        height:500,
        resizable: false,
        draggable: false,
        open: function() {             
            })
        }       
    });

$("#multipleids").live("dblclick", function(){  
    value =$(this).attr('id');  
    $.ajax({
        type:"post",
        url: "ajax.php",                        
        data:"value="+value,
        success: function(data){
            oTable.dialog("open");
            oTable.createdDialog.html(data);
        }   
    });
});

答案 1 :(得分:0)

你正在使用jquery的html替换jquery的设置来创建jquery ui对话框,这就是你无法看到对话框的原因

你要做的是在#dialog中创建一个div然后

$("#divinsideyour-dialog").html(markup)