代码之家  ›  专栏  ›  技术社区  ›  JasCav

在jQuery中只执行一次操作

  •  3
  • JasCav  · 技术社区  · 14 年前

    我正在使用jqueryui并尝试禁用数据组中的所有文本框,但每次加载选项卡时只禁用一次。到目前为止,我掌握的情况如下:

    $(function () {
            $("#tabs").tabs({
                cache: true,
                load: function (event, ui) {
                    $(".data-group").one('load', function () {
                        $(this).find(':text').attr('disabled', 'disabled');
                    });
                },
                select: function (event, ui) {
                    // Do Stuff
                }
            });
        });
    

    修复此问题的建议?

    2 回复  |  直到 14 年前
        1
  •  0
  •   karim79    14 年前

    尝试绑定到 show

    show: function(event, ui) {
        if($(".data-group").find(":text[value]").length) {
            $(".data-group").find(":text").removeAttr("disabled");
        }
    }
    
        2
  •  0
  •   JasCav    14 年前

    我最终通过缓存选项卡来解决这个问题,这样它们只加载一次。然后,启用相应的文本框。从那时起,用户的操作将决定是否启用或禁用其他框。