2013-01-16 26 views
5

Tôi có đoạn code HTML sau sử dụng để tạo trên một trang:thiết lập một giá trị tùy chọn HTML để chuỗi rỗng

<select> 
    <option value="" selected>test</option> 
    <option value="test2">test2</option> 
</select> 

Nhưng khi nhìn vào HTML trong thanh tra DOM của Google Chrome nó trông như thế này:

<select> 
    <option value selected>test</option> 
    <option value="test2">test2</option> 
</select> 

Xem sự khác biệt? Đối với <option>...</option> đầu tiên, value="" được chuyển thành chỉ value. Giá trị, khi được đặt thành chuỗi rỗng đơn giản bị hủy. Có cách nào để đặt giá trị của thẻ tùy chọn thành chuỗi trống không? Tôi cần điều này bởi vì tôi đang kéo các phần tử ra khỏi cơ sở dữ liệu để tạo ra một menu <select>. Mỗi <option> sẽ có số value được đặt thành giá trị của phần tử cơ sở dữ liệu và một số trong các thành phần đó có chuỗi trống làm giá trị của chúng.

Trả lời

2

Nó chỉ là ký hiệu thanh tra DOM của Google Chrome (loại bỏ '= ""' khỏi thuộc tính). Nếu bạn kiểm tra nó bằng FireBug hoặc đơn giản là xem nguồn thì bạn sẽ thấy nó là OK.

mẫu mã của bạn sản xuất này trong Google Chrome:

Chrome's inspector removing the quotes and equal sign

Và đây là kết quả trong FireFox:

FireBug showing that correctly

Vì vậy, đừng lo lắng về điều đó.

+0

Cảm ơn. Có vẻ như một thiết kế câm. –

0
<option value="" selected="selected">test</option> 

Giá trị trung bình này là chuỗi rỗng. Thậm chí nếu dom thanh tra trong chrome cho bạn thấy như thế

1

bob như Hanky ​​nói rằng bạn có thể sử dụng selected = "selected" or "" để mã sẽ là:

<select> 
<option value="" selected="selected">test</option> 
<option value="test2">test2</option> 

hoặc

<select> 
<option value="" selected="">test</option> 
<option value="test2">test2</option> 

Kiểm tra bài viết này có thể giúp: W3 option language reference

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