2011-10-24 43 views
6
<select name="category" id="category"> 
    <option value="">All Category</option> 
    <option value="1">Category 1</option> 
    <option value="2">Category 2</option> 
    <option value="3">Category 3</option> 

</select> 

thế nào để chọn các loại với giá trị = ""jQuery được chọn giá trị tùy chọn trống

Điều kiện để chính xác:

if($('#category option:selected')){ 
    var category_url = "&category="+$('#category').val(); <!-- True --> 
} 

Điều kiện 2 sai:

if($('#category option[value=""]')){ 
    var category_url = "";        <!-- Error --> 
} 

Xin hãy giúp tôi !!!

+0

Thêm những gì bạn đang cố gắng đạt được, vì vậy chúng tôi có thể chỉ cho bạn đi đúng hướng. Ví dụ: điều kiện 2 của bạn sẽ luôn trả về "true", vì sẽ luôn tồn tại một giá trị = "", ngay cả khi giá trị đó không được chọn. – rkw

+0

Điều này được sử dụng để làm việc trong các phiên bản cũ hơn của jquery (1.7.2) nếu bạn sử dụng '' '$ (" option [value =] ")' '', nhưng bây giờ nó không còn nữa. –

Trả lời

2

Tôi không chắc chắn nếu tôi hiểu câu hỏi của bạn một cách chính xác, nhưng bạn đang tìm kiếm để làm một cái gì đó như thế này?

if($('#category option:selected')){ 
    var selValue = $('#category').val(); 
    var category_url; 

    if(selValue) 
     category_url = "&category="+$('#category').val(); <!-- True --> 
    else 
     <!-- error --> 
} 
+1

'if ($ ('# tùy chọn danh mục: đã chọn')) {' sẽ * luôn * trả về 'đúng'. Bạn cần kiểm tra 'length'. –

+0

cảm ơn bạn rất nhiều. Tôi đã thành công với mã: 'var category_url = ''; if ($ ('# category'). val()! = '') {category_url = "& category =" + $ ('# category'). val(); } ' – TuanNguyen

2
if(!$("#category").val()) 
    //selected valule is "" 
+0

cảm ơn bạn rất nhiều. Tôi đã thành công với mã: 'var category_url = ''; if ($ ('# category'). val()! = '') {category_url = "& category =" + $ ('# category'). val(); } ' – TuanNguyen

2

Đây là một chút cũ, nhưng bạn có thể làm:

$('#category').find('option:empty') 
0

Trong thực tế, nếu bạn nói với các trình duyệt để chọn gì cả, nó làm Jox:

$("#category option").attr("selected", false); //Unselect each option 

Theo mặc định, trình duyệt sẽ chọn sẽ hiển thị tùy chọn đầu tiên, bất kể giá trị của tùy chọn là gì.

Hy vọng điều này sẽ giúp :)

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