2012-06-01 107 views
0

我有代码来显示一个jQuery模态窗口:为什么IE不显示JQuery UI对话框?

 if (jQuery.browser.msie) { 
      $("#dialog-form").dialog(); 
     } else { 
      $("#dialog-form").dialog('open'); 
     } 

     $("#dialog-form").dialog({ 
      autoOpen: false, 
      modal: true, 
      buttons: { 
      Cancel: function() { 
       $(this).dialog("close"); 
      } 
      }, 
      close: function() { 
      $(this).dialog("close"); 
      } 
     }); 

这里是HTML:

<div id="dialog-form" title="Select Employee"> 
     <form id="dialogForm"> 
      <fieldset> 
       <select id="employeeList"> <option value="0"><%=LocalizedContext.SelectAnEmployeeText%></option> <%=model.EmployeeOptions%> </select> 
      </fieldset> 
     </form> 
    </div> 

而且它在FF显示罚款,但是当它在IE浏览器弹出的对话框那里(取消按钮),但下拉列表丢失。任何想法为什么下拉不显示在IE中?

回答

1

试试这个代码..

if (jQuery.browser.msie) { 
      $("#dialog-form").dialog(); 
     } else { 
      $("#dialog-form").dialog('open'); 
      $('#employeeList').show(); //show the select box explicitly 
     } 
+0

谢谢卡比兰,虽然没有运气 –

0

被嵌入。就绪()方法的代码?否则,它会尝试渲染尚未准备好的div。即

$(document).ready(function(){ 
    // your code below 
if ($.browser.msie) { 
      $("#dialog-form").dialog(); 
     } else { 
      $("#dialog-form").dialog('open'); 
     } 

     $("#dialog-form").dialog({ 
      autoOpen: false, 
      modal: true, 
      buttons: { 
      Cancel: function() { 
       $(this).dialog("close"); 
      } 
      }, 
      close: function() { 
      $(this).dialog("close"); 
      } 
     }); 

});