2013-08-23 71 views
0

jquery-ui有問題。jquery dialog fire兩次開啓事件

我綁定了一個點擊事件來打開一個對話框,但對話框的打開功能觸發兩次。

click事件只觸發一次,僅僅是打開的開放函數的兩個對話框

這是我的代碼:

<div id="modalWindow">Cargando...</div> 
    <script> 
     $(document).ready(function() { 
      var ventana = $("DIV#modalWindow"); 
      ventana.dialog({ 
       autoOpen: false, 
       show: "slow", 
       hide: "slow", 
       width: 500, 
       resizable: false, 
       draggable: false, 
       modal: true, 
       closeOnEscape: true, 
       Ok: function() { $(this).dialog("close").html("Cargando..."); }, 
       close: function() { $(this).html("Cargando..."); } 
      }); 

      $("DIV.imagen_perfil img").click(function (evt) { 
       //...some code 
        ventana.dialog({ 
         title: "Subir Imagen", 
         open: function (event, ui) { 
          //...loads PartialView 
         } 
        }); 
       ventana.dialog("open"); 
      }); 

     }); 
     </script> 

這是觸發點擊事件的HTML:

<li> 
    <label >Imagen de perfil:(Click en la Imagen Para Agregar):</label> 
    <div class="imagen_perfil"> 
     <img src="~/images/imagen_pordefecto.png"/> 
    </div> 
</li> 

回答

3

這是因爲您在點擊中再次呼叫dialog函數(其觸發第一個open呼叫,第二個是您實際撥打open),如果你能ommit對話功能,能解決問題,如果你真的有改變關於對話的信息,你應該使用option方法(而不是再次調用dialog

ventana.dialog("option", { title: 'New Title',open:function(){...} }); 
+0

不,我有試過這個並且不起作用,問題依然存在 –