2011-08-02 42 views
5

Đây là mẫu http://jsfiddle.net/mUpjw/15/Hộp thoại JQuery ('mở') không hoạt động

Tôi đã có JQuery 1.2 ở một số mã cũ và đã mở hộp thoại theo cách này.

$('#myDiv').dialog('open'); 

Tôi đã nâng cấp lên jquery 1.6.1 và hoạt động tốt. Nhưng nếu tôi thêm DOCTYPE hơn nó không hoạt động nhưng nếu tôi làm

$('#myDiv').dialog(); 

Điều đó có hiệu quả.

Điều gì có thể là lý do cho việc này?

+0

Liên kết đến trang/mã của bạn? – AlienWebguy

+0

@AlienWebguy http://jsfiddle.net/mUpjw/15/ –

Trả lời

4

Bạn cần thiết lập hộp thoại của mình.

<div id="dialog_link">click here</div> 
<div id="mydiv" style="display:none;">This is some document here.Will be shown as used 'open'</div> 
<div id="mydiv2" style="display:none;">This is some document here</div> 

$(document).ready(function(){ 

$('#mydiv').dialog({ 
    autoOpen: false, 
    width: 600, 
    buttons: { 
     "Ok": function() { 
      $(this).dialog("close"); 
     }, 
     "Cancel": function() { 
      $(this).dialog("close"); 
     } 
    } 
}); 

$('#dialog_link').click(function() { 
    $('#mydiv').dialog('open'); 
    return false; 
}); 
+0

thực tế thú vị là khi $ ('# mydiv'). Dialog ({..}) nằm ngoài .ready() nó không mở. Khi tôi di chuyển nó bên trong tất cả mọi thứ bắt đầu làm việc như mong đợi. Đi con số. Cảm ơn @Caimen – Califf

0

Đây là một lựa chọn để được sử dụng sau bạn đã khởi tạo hộp thoại ..

$('#mydiv').dialog({autoOpen: false}); 
// now you can call it with 'open' to actually show it.. 
$('#myDiv').dialog('open'); 

demo tại http://jsfiddle.net/gaby/mUpjw/16/

Sự khác biệt là giữa jQuery UI phiên bản và không thư viện jQuery jQuery

+0

Tôi gặp sự cố tương tự, Câu trả lời này đã giải quyết được vấn đề của tôi. cảm ơn –

Các vấn đề liên quan