2012-02-03 24 views
6

Đoạn mã sau tạo ra hộp thoại bật lên mô hình jQueryUI được mong đợi trong Firefox, Chrome và Opera. Tuy nhiên, nó không thành công trong Internet Explorer 9:Tại sao hộp thoại jQueryUI này không hoạt động trong IE9?

<html><head> 

<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/themes/base/jquery-ui.css" type="text/css" media="all" /> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js"></script> 

<script type="text/javascript"> 
$(function() { 
    $("#AddUser").dialog({ 
     autoOpen: false, modal: true, height: 'auto', width: 400, 
     buttons: { 
      "Add": function() { 
       alert("Add one!"); 
      } 
     }, 
     close: function() { 
      allFields.val("").removeClass("ui-state-error"); 
     } 
    }); 

    $("#AddUserButton").button().click(function(event) { 
     event.preventDefault(); 
     $("#AddUser").dialog("open"); 
    }); 


}); 
</script> 

</head><body> 

<div id="AddUser" title="Add User">Popup content here</div> 
<input type="submit" id="AddUserButton" /> 

</body></html> 

Trong IE 9 #AddUser div không phải là hộp thoại jQueryUI. Có điều gì mà tôi đang thiếu không?

EDIT: Mã được cập nhật gần mã sản xuất hơn.

Cảm ơn.

+0

lỗi nào bạn nhận được? –

+0

@NadirMuzaffar: div được hiển thị đơn giản trên màn hình. – dotancohen

+0

Bạn có đang sử dụng phiên bản jquery/jqueryui kéo dài không? – tcao

Trả lời

10

bạn vấn đề là dấu "" IE không thích nó

$("#AddUser").dialog({ 
        autoOpen: false, modal: true >>,<< 
      }); 

này sẽ làm việc:

$("#AddUser").dialog({ 
        autoOpen: false, modal: true 
      }); 
+0

Cảm ơn bạn, điều đó đã khắc phục nó trong mã mà tôi đã đăng! Tuy nhiên mã sản xuất có một số tính năng khác, và không có dấu phẩy ở trên chúng. Tôi đã cập nhật mã trong câu hỏi. Cảm ơn. – dotancohen

+1

Điều này hóa ra là cả một thế giới đau đớn! Bạn đã vượt qua rào cản đầu tiên, mặc dù vậy. Cảm ơn! – dotancohen

+0

Nhiều giờ bị mất ... chỉ dành cho dấu phẩy .... Cảm ơn bạn! – Bidou

5

Cố gắng thêm DOCTYPE trong file html. <!DOCTYPE HTML>

+0

Cảm ơn, thực tế là _one_ trong số các vấn đề. – dotancohen

1

Ok, đây chỉ là một phỏng đoán, nhưng type = "submit" đôi khi là kỳ lạ trên tức là ...

bạn đã thử: <button id="AddUserButton">AddUser</button>

cũng tôi sẽ gọi là "preventDefault" như cuối cùng hành động bên trong người nghe hành động.

+0

Cảm ơn bạn. Tuy nhiên, vấn đề đã được giải quyết và IE đã xảy ra với mã số

0

Tôi đã gặp vấn đề tương tự với hộp thoại và thêm sau trong tệp css đã thực hiện công việc cho tôi.

.ui-widget-overlay 
{ 
     z-index: 0 !important; 
} 
Các vấn đề liên quan