2012-02-15 27 views
8

Tôi có đoạn mã sau:Làm cách nào để loại trừ một lớp khỏi bộ chọn jQuery của tôi?

$(":input[type='text']").wijtextbox(); 

Những gì tôi muốn là cho wijtextbox() KHÔNG được áp dụng nếu lớp của textbox của tôi là mẹ đẻ. Có cách nào tôi bằng cách nào đó có thể loại trừ điều này bằng cách thêm vào bộ chọn ở trên?

Thực hiện điều này một wijtextbox:

<textarea class="wijmo-wijtextbox ui-widget ui-state-default ui-corner-all valid" >xx</textarea> 

Đừng làm này một wijtextbox:

<textarea class="native wijmo-wijtextbox ui-widget ui-state-default ui-corner-all valid" >xx</textarea> 
+0

Nếu lớp là văn bản "gốc"? – Purag

Trả lời

14

này:

$("input[type='text']").not(".native").wijtextbox(); 

hay này:

$("input[type='text']:not('.native')").wijtextbox(); 

nên thực hiện thủ thuật. Ngoài ra còn có một phím tắt cho việc lựa chọn một đầu vào có kiểu được text:

$("input:text").not(".native").wijtextbox(); 

Thông tin thêm về not()here.

EDIT: Kể từ khi nó xuất hiện bạn cần phải chọn một textarea, hãy thử như sau:

$("textarea").not(".native").wijtextbox(); 
+0

'đầu vào: văn bản' sẽ không chọn một' textarea' đó là những gì OP có trong câu hỏi. – ShankarSangoli

+0

Không có 'đầu vào [loại = 'văn bản']' có ... anh ấy đã chỉnh sửa câu hỏi của mình. : P – Purag

+0

Có, sẽ không hoạt động vì nó là một và giống nhau. – ShankarSangoli

3

Hãy thử điều này.

$(":input:not(.native)").wijtextbox(); 

Vì bạn chọn textarea bạn thậm chí có thể sử dụng

$("textarea:not(.native)").wijtextbox(); 

:not(selector) - Chọn tất cả các yếu tố không phù hợp với bộ chọn nhất định.

+0

@Jessica - Thử cái này. – ShankarSangoli

2

Bạn có thể sử dụng .not() selector của jQuery, như ghi nhận ở đây: http://api.jquery.com/not/

Làm thế nào bạn sẽ sử dụng nó sẽ thực sự phụ thuộc vào những gì cụ thể bạn đang cố gắng để tìm mặc dù.

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