JQuery UI Modal仅适用于第一次

时间:2010-02-24 23:55:45

标签: jquery jquery-ui modal-dialog

在我对输入字段值进行查找后,我正在使用JQuery UI来显示模态。每次输入字段中的值发生变化时都必须触发。

我的问题是,模式只显示第一次调用代码 - 而不是后续时间。我知道代码运行了,因为我尝试在那里放置警报 - 显示正如预期的那样。

我在这里缺少什么?

<input id="RegistrationNo" name="RegistrationNo" type="text"/>

<span style=visibility:hidden" id="dialog">Nononono!!</span>

<script>
  $("#RegistrationNo").change(function() {
     //Some check here...
     $("#dialog").dialog({
      bgiframe: true,
      modal: true,
      buttons: { 
        Ok: function() { 
          $(this).dialog('close');
          }
        }
      });
  });
</script>

1 个答案:

答案 0 :(得分:2)

尝试只创建一次对话框,然后根据需要打开/关闭它:

<input id="RegistrationNo" name="RegistrationNo" type="text"/>

<span id="dialog">Nononono!!</span>

<script>
  $("#dialog").dialog({
      bgiframe: true,
      modal: true,
      autoOpen:false,
      buttons: { 
        Ok: function() { 
          $(this).dialog('close');
          }
        }
      });
  $("#RegistrationNo").change(function() {
     $("#dialog").dialog("open");
  });

</script>