2011-08-22 27 views
5

Tôi đã sử dụng jQuery để tạo ra một datepicker như vậy:jQuery datepicker - Tại sao kiểu dáng chủ đề không hiển thị?

<input type="text" id="my_datepicker"> 

$('#my_datepicker').datepicker(); 

Các datepicker đang làm việc tốt và tôi đã sử dụng điều này nhiều lần trước đó. Vấn đề là phần tử đầu vào vẫn trông giống như một trường văn bản bình thường, trong khi khi tôi đã sử dụng nó trong quá khứ, nó đã sử dụng các lớp UI của jQuery để tạo kiểu cho trường trông bóng loáng và phù hợp với chủ đề.

Tôi đã sử dụng firebug để xem clesses đã được áp dụng cho các yếu tố đầu vào, và nó chỉ có:

hasDatepicker 

trong khi một lĩnh vực đầu vào của một datepicker trên một trang web khác mà là theo kiểu một cách chính xác có tất cả các lớp học sau:

hasDatepicker 
ui-inputfield 
ui-widget 
ui-state-default 
ui-corner-all 

tôi đã xem xét các tài liệu datepicker, nhưng tôi không thể nhìn thấy một tùy chọn cho phép bạn chọn tham gia hoặc ra khỏi phong cách này và tôi đã có thể nghĩ rằng điều này xảy ra theo mặc định anyway.

Ai có thể cho tôi biết tôi cần làm gì để kích hoạt tính năng này không?

Rất cám ơn.

Cập nhật:

<input id="dob" type="text" maxlength="45" size="45" /> 

Đây là đánh dấu đầu vào từ các trang web hoạt động theo yêu cầu.

+1

hãy chắc chắn rằng bạn đã bao gồm css trong trang của bạn –

+1

Vâng , bạn luôn có thể [tự thêm những lớp đó] (http://jsfiddle.net/gothick/WHeEy/).Chúng ta có thể thấy nguồn gốc của 'đầu vào' trong trang web đang hoạt động không? –

+0

@Matt Xin chào! Tôi đã thực hiện chỉnh sửa cho bài đăng của mình để hiển thị 'đầu vào' thực tế từ trang web trực tiếp. – Joe

Trả lời

13

Bạn có đang liên kết trong biểu định kiểu chủ đề không?

Ví dụ:

<link rel="stylesheet" type="text/css" media="all" 
     href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/smoothness/jquery-ui.css" /> 
+0

Tôi đã vô tình sử dụng phương tiện truyền thông = "màn hình", ngăn cản việc áp dụng kiểu dáng? KỲ DỊ! Chuyển sang phương tiện truyền thông = "tất cả" đã áp dụng kiểu dáng như mong đợi. Cảm ơn! – James

1

Dường như với tôi rằng trang web mà bạn chỉ ra được áp dụng phong cách css đến lĩnh vực đầu vào ngoài các thư viện jquery-ui, ý tôi là, trong một kiểu mà không làm thuộc về jquery-ui.

Trong jsfiddle http://jsfiddle.net/diosney/PkEar/3/ bạn có thể thấy rằng các lớp này không được áp dụng bởi jquery-ui datepicker() chính nó (tôi đang sử dụng jquery 1.6.2 và jquery-ui 1.8.14).

0

Tôi phát hiện thấy sự cố đến từ cách ứng dụng của tôi đã được nhóm các tệp css. Tôi đã thêm các liên kết trong trang chỉ mục của mình và có thể làm cho các chủ đề hoạt động.

<link href="~/Content/jquery-ui.css" rel="stylesheet" /> 
<link href="~/Content/jquery-ui.structure.css" rel="stylesheet" /> 
0

hãy thử với dưới Đối với admin: -

function eds_admin_styles() { 
     wp_enqueue_style('jquery-ui-datepicker-style' , '//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/smoothness/jquery-ui.css'); 
    } 
    add_action('admin_print_styles', 'eds_admin_styles'); 
    function eds_admin_scripts() { 
     wp_enqueue_script('jquery-ui-datepicker'); 
    } 
    add_action('admin_enqueue_scripts', 'eds_admin_scripts'); 

Đối với chủ đề:

function edsbootstrap_scripts() { 
     wp_enqueue_style('jquery-ui-datepicker-style' , '//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/smoothness/jquery-ui.css'); 
     wp_enqueue_script('jquery-ui-datepicker'); 
    } 
    add_action('wp_enqueue_scripts', 'edsbootstrap_scripts'); 

đây là js

(function($) { 
     $('#jquery-datepicker').datepicker(); 
    }(jQuery)); 
Các vấn đề liên quan