弹出窗口第一次打开的原因是什么?

时间:2012-12-17 08:51:57

标签: asp.net vb.net jquery

我有一个奇怪的问题,我无法理解为什么会这样。

我调用了一个页面 - jquery ajax在网格viw的行点击上的备注(比如说)。然后我把那个页面(作为回应)绑定到div - dvRemarks(比如说)。这个div在弹出窗口中打开。

弹出窗口只是第一次打开,工作正常。但是当我第二次点击时,数据会响应,但这次弹出窗口没有打开。问题是弹出窗口,但我不明白为什么会这样?

当我再次刷新页面时,它再次打开Ist时间。

下面是jquery: -

jQuery(function() {
            // Remarks          
            jQuery('#<%=dvRemarks1.ClientID %>').dialog({
                autoOpen: false,
                width: 600,
                modal: true
            });
            // Remarks Link
            jQuery('#lnkDialog').click(function() {
                jQuery('#<%=dvRemarks1.ClientID %>').dialog('open');
                return false;
            });
         });

以下是我点击的功能: -

function Call_Ajax(id)
    {   
        var d = new Date();
        var n = d.getMilliseconds();
        var parameters="id=" + id;
                $.ajax({
                      type: "POST",
                      url: "Remark.aspx",
                      data: {id:id, n:n},
                      success: function(response) {
                            $('#<%=dvRemarks.ClientID %>').html(response);
                            $("#lnkDialog").click();
                        },
                        error: function() {
                            alert('Some problem has been occured.');
                        }
                 });
     }     

下面是div-dvRemarks,我在其中绑定响应

<div id="dvRemarks1" runat="server" style="display: none;" title="Enter Remarks">
        <div id="dvRemarks" runat="server">
        </div>
</div>

感谢。

1 个答案:

答案 0 :(得分:0)

对此不确定,但请尝试低于一。

jQuery(function() {
        // Remarks          
        jQuery('#<%=dvRemarks1.ClientID %>').dialog({
            autoOpen: false,
            width: 600,
            modal: true,  //Calling destroy on close function might help
            close: function() {
                        $(this).dialog("destroy");
                }
        });
        // Remarks Link
        jQuery('#lnkDialog').click(function() {
            jQuery('#<%=dvRemarks1.ClientID %>').dialog('open');
            return false;
        });
     });

尝试将ajax调用更改为

function Call_Ajax(id)
{   
    var d = new Date();
    var n = d.getMilliseconds();
    var parameters="id=" + id;
            $.ajax({
                  type: "POST",
                  url: "Remark.aspx",
                  data: {id:id, n:n},
                  success: function(response) {
                        $('#<%=dvRemarks.ClientID %>').empty().html(response); //empty function may be of some help here
                        $("#lnkDialog").click();
                    },
                    error: function() {
                        alert('Some problem has been occured.');
                    }
             });
 }