2011-06-21 40 views
8

Được cung cấp danh sách các đầu vào HTML, văn bản và chọn, tôi muốn kiểm tra xem có thuộc tính tên nào không bằng một chuỗi đã cho và bất kỳ việc gì, để thêm một lớp vào nó.jQuery: Kiểm tra xem thuộc tính name có bằng một chuỗi đã cho không

Ví dụ:

if($('textarea, input, select').attr("name") == "this_name"){ 
    $(this).addClass("myClass"); 
} 

Tôi chỉ không chắc chắn những gì tôi, làm sai ở đây, nhưng nó dường như không được làm việc.

Trả lời

6

thử:

$("textarea[name='this_name'], input[name='this_name'], select[name='this_name']").addClass("myClass"); 

Look sử dụng selectors CSS3 trong jQuery

+0

việc Wont: http://jsfiddle.net/7eVKb/ – genesis

+1

Nếu bạn đang đi để sử dụng jsfiddle, đảm bảo bạn sử dụng thư viện đúng . Điều này là dành cho jQuery, không phải cho Mootools! –

3

Những gì bạn đang tìm kiếm là:

$('textarea, input, select').filter('[name="this_name"]').addClass("myClass"); 

.attr() của bạn sẽ trông cho thuộc tính name của đầu tiên xuất hiện yếu tố (xem documentation on attr)

+0

Đây là chậm hơn so với phương pháp dưới đây - điều này sẽ kéo ra tất cả các yếu tố là texarea, đầu vào hoặc chọn, sau đó lọc! –

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