【问题标题】:Problem with simplemodal jQuery简单模式 jQuery 的问题
【发布时间】:2009-12-20 15:50:38
【问题描述】:

我使用此调用使用 simplemodal (http://www.ericmmartin.com/projects/simplemodal/) 创建模式窗口:

$.get("openform/", function(data){
    $.modal(data, {
        closeHTML:'<a class="modalCloseImg simplemodal-close" title="Close"/>',
        minHeight:400,
        autoResize:'True',
        });
    });

html 输出相当简单。其中数据为空div-

<div id="errors"></div>

问题在于,相同表单中的按钮执行 ajax 调用并使用错误消息填充 #errors,而 simplemodal 包装器不会自动调整大小。甚至打电话

$.modal.resize();

什么都不做。

编辑: 填充#errors 的调用是这样的:

$("#addk").live("click", function(event){
    $.ajax({
        type: "POST",
        url: "savenow/",
        data: $("#form").serialize(), 
        success: function(msg){
            $("#errors").html(msg);
            $.modal.resize();
        },
        error : function(){
            $("#errors").html(<p>Fail!</p>);
        }
    });
    return false;
});

在那里使用 live 是因为按钮也来自之前的 ajax 调用。

我做错了吗?没有我自己的调整窗口大小的功能,有没有办法让它工作?

艾伦

【问题讨论】:

  • 尝试使用 True 作为小写。该插件可能无法正确解析布尔值。
  • 谢谢,但没有任何改变。
  • 删除 minHeight 选项也不会改变任何东西。没有最小高度的窗口设置的尺寸比我设置的400px还要小。

标签: jquery simplemodal


【解决方案1】:

在 ajax 调用中尝试以下错误函数:


error : function(){
                $("#errors").html("<p>Fail!</p>");
                $(".simplemodal-container").css("height", "auto");
        }

【讨论】:

  • 有一个类似的问题,容器没有根据内容更改调整大小。很好的收获。
【解决方案2】:

首先(这不是问题的根源):'True''true' 是字符串,'False''false' 也是。所有这些字符串在布尔上下文中都是“真实的”。

第二:快速浏览一下 simplemodal 1.3.3 的源代码会发现,autoResize 仅在调整浏览器窗口大小时才起作用,这根本不是你的情况。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-15
    • 2020-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多