2010-03-10 26 views
5

Tôi tự hỏi liệu có thể thay đổi thứ tự của sự vật trong một điều khiển chọn mà không phải xây dựng lại nó hoàn toàn không?Di chuyển một mục lên/xuống một lựa chọn

Có chức năng javascript nơi tôi có thể thay đổi "chỉ mục" của một tùy chọn cụ thể trong lựa chọn không?

Cảm ơn

Trả lời

5

Chắc chắn, chỉ cần tìm hai yếu tố trong jQuery (bằng ID của họ hoặc bất cứ điều gì), vì vậy bạn có hai đối tượng và sau đó sử dụng before() trên chúng

var o1=$("#opt1"); 
var o2=$("#opt2"); 
o2.insertBefore(o1); 
+1

Tôi thích giải pháp của bạn tốt hơn so với tôi. Tại sao tôi không nghĩ về điều đó? :-) – Josh

+0

Công cụ tuyệt vời. Cảm ơn tất cả! – AndrewC

1

Hãy thử sử dụng Array.splice

// Remove the option from the list: 
var option = selectElement.options.splice(indexOfOptionToRemove,1); 

// and put it back in at the new index: 
selectElement.options.splice(indexOfNewOptionPosition,option); 
Các vấn đề liên quan