2009-08-05 30 views
9

chỉ cần tự hỏi làm thế nào có thể bỏ chọn hộp tùy chọn chọn, tôi đã sử dụng .remove() nhưng điều này thực sự xóa văn bản khỏi hộp chọn,cách bỏ chọn hộp chọn tùy chọn sau khi tính toán được thực hiện

Còn cách nào khác không.

nhờ

+0

Bạn có muốn đặt văn bản mặc định làm văn bản được chọn không? – rahul

+0

Tôi có một số hộp chọn, tôi nhận được giá trị và văn bản của họ và thêm chúng vào mảng sau đó tôi cần phải đặt trạng thái ban đầu của chúng. – amir

Trả lời

17

$('#mySelectBox :selected').attr('selected', '');

đâu #mySelectBox là id của yếu tố lựa chọn của bạn.

+0

Cảm ơn, hoạt động tốt. – amir

+0

Yêu thích nó, hoạt động tức là quá –

7

Những trường hợp này thay đổi đối với các hộp chọn có các tùy chọn đơn và chọn các hộp có nhiều tùy chọn.

Đối với hộp chọn với các tùy chọn duy nhất:

<select id='selectbox'> 

Mã jQuery:

$('#button').click(function() { 
     $('#selectbox').attr('selectedIndex', '-1'); 
}); 

Lưu ý: bạn cần biến thể này để làm cho nó làm việc trong Internet Explorer. Ví dụ bên dưới cũng hoạt động đối với các hộp văn bản tùy chọn đơn trong Internet Explorer.

Đối với hộp chọn với nhiều lựa chọn:

<select id='selectbox' multiple='multiple'> 

Mã jQuery:

$('#button').click(function() { 
     $('#selectbox option').attr('selected', ''); 

}); 
+1

Thay đổi "attr ('selected', 'false');" thành "attr ('selected', '');" và bạn có cho mình một câu trả lời tuyệt vời ... – markthegrea

+0

Thay đổi nó. Cảm ơn bạn đã nhận xét. – Scharrels

1

một phản ứng rất chậm, nhưng tôi thấy làm việc này tốt hơn cho một lựa chọn nhiều, vì vậy hy vọng có thể giúp đỡ người khác người khác cũng tìm thấy điều này trên Google.

$('#button').click(function() { 
     $('#selectbox option').removeAttr('selected'); 

}); 
0

Câu trả lời rất muộn nhưng tôi không thể tìm thấy bất kỳ thứ gì đã làm việc với một hộp chọn không nhiều, vì vậy tôi đã tự viết bài này.

var chg = 0; // global to unselect 
$("#myoptions").on({ 
    mousedown : function(){ 
    chg = 0; 
}, 
change : function() { 
    chg = 1; 
}, 
click: function() { 
    if (chg !== 1) { 
    $("#myoptions")[0].selectedIndex = -1; 
    } 
} 
}); 

Tôi đã thử nghiệm điều này trong Chrome và IE8.

Nó sẽ cho phép bạn chọn và sau đó bỏ chọn như bạn có thể với hộp chọn nhiều. Bạn không phải sử dụng phím CTRL nhưng nếu bạn vẫn làm việc đó.

Đây là một jsFiddle: http://jsfiddle.net/rkekvows/

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