禁用jquery ui对话框

时间:2014-02-03 05:36:06

标签: jquery jquery-ui

我有三个按钮:第一个打开,第二个禁用,第三个启用。当用户单击禁用按钮时,应禁用jquery ui对话框,并在单击打开按钮时不打开。之后,如果用户单击启用,则应启用对话框并在打开对话框上单击打开。

example:-

代码: -

$(function() {
    $( "#dialog" ).dialog({
      autoOpen: false,
      show: {
        effect: "blind",
        duration: 1000
      },
      hide: {
        effect: "explode",
        duration: 1000
      }
    });

    $( "#opener" ).click(function() {
      $( "#dialog" ).dialog( "open" );
    });
  });

任何帮助都应该受到赞赏。

3 个答案:

答案 0 :(得分:1)

希望这会有所帮助。

var isEnable=1;
     $( "#opener" ).click(function() {
          if(isEnable)
             $( "#dialog" ).dialog( "open" );
      });
     $( "#enabler" ).click(function() {
             isEnable=1; 
      });
     $( "#disablerr" ).click(function() {
             isEnable=0;
      });

其他方式是使用jquery禁用/启用按钮,但我认为如果你没有css禁用效果,这是更好的选择。

答案 1 :(得分:0)

使用变量来跟踪对话框是否已启用。

var dialog_enabled = true;

$("#opener").click(function () {
    if (dialog_enabled) {
        $("#dialog").dialog("open");
    }
});

$("#disable_dialog").click(function() {
    dialog_enabled = false;
});
$("#enable_dialog").click(function() {
    dialog_enabled = true;
});

DEMO

答案 2 :(得分:0)

Hi Prince您可以使用按钮点击设置全局变量,并可以根据下面的全局变量处理对话框的启用和禁用:

  var isDisabled=false;
         $( "#opener" ).click(function() {
              if(!isDisabled)
                 $( "#dialog" ).dialog( "open" );
          });
         $( "#enabler" ).click(function() {
                 isDisabled=true; 
          });
         $( "#disablerr" ).click(function() {
                 isDisabled=false;
          });