Làm thế nào để hiển thị tùy chọn vô hiệu hóa HTML chọn theo mặc định?


139

Tôi chưa quen với HTML và PHP và muốn đạt được trình đơn thả xuống từ bảng mysql và cũng được mã hóa cứng. Tôi có nhiều lựa chọn trong trang của mình, Một trong số đó là

<select name="tagging">
    <option value="">Choose Tagging</option>
    <option value="Option A">Option A</option>
    <option value="Option B">Option B</option>
    <option value="Option C">Option C</option>
</select>

Vấn đề là bây giờ người dùng cũng có thể chọn "Chọn gắn thẻ" làm gắn thẻ của mình nhưng tôi chỉ muốn cung cấp cho anh ta để chọn từ ba có sẵn. Tôi đã sử dụng vô hiệu hóa như

<select name="tagging">
    <option value="" disabled="disabled">Choose Tagging</option>
    <option value="Option A">Option A</option>
    <option value="Option B">Option B</option>
    <option value="Option C">Option C</option>
</select>

Nhưng bây giờ "Tùy chọn A" đã trở thành mặc định. Vì vậy, tôi muốn đặt "Chọn gắn thẻ" theo mặc định và cũng muốn tắt nó khỏi lựa chọn. Có phải là một cách để làm điều này. Điều tương tự cần phải được thực hiện với lựa chọn khác sẽ lấy dữ liệu từ Mysql. Bất kỳ đề nghị sẽ được đánh giá cao.


làm thế nào về việc thêm một sự kiện nhấp chuột vào lựa chọn để vô hiệu hóa tùy chọn đầu tiên.
David Blacksmith

Bạn phải sửa lỗi cú pháp - value = "" bị vô hiệu hóa nên bị vô hiệu hóa = "bị vô hiệu hóa" + xóa các thẻ đóng </ select> lẻ
Evgeniy

@Evgeniy rất tiếc rằng </ select> thuộc về phần khác trong mã của tôi
Ankit Sharma

@AnkitSharma tôi đã chỉnh sửa mã của mình - bạn đã </ select> <select> <tùy chọn> ... <tùy chọn> </ select>
Evgeniy

@Evgeniy thanx ..... </ select> đã sao chép từ mã của tôi do nhầm lẫn.
Ankit Sharma

Câu trả lời:


290

sử dụng

<option selected="true" disabled="disabled">Choose Tagging</option>    

42
Bạn không cần phải đặt truehoặc disabledgiá trị. bạn có thể nhận được bằng cách thực hiện<option selected disabled>Choose Tagging</option>
Sam Eaton

18
@ SamEaton, nó chỉ làm cho mã tuân theo cú pháp XHTML hợp lệ, khác với HTML5 bạn có thể bỏ qua nó.
Cris

1
Bạn nên đặt giá trị = "" vì vậy nếu bạn cũng có yêu cầu thì sẽ xuất hiện lỗi để chọn từ danh sách thả xuống, nếu không, giá trị trống sẽ được chuyển ngay cả khi không có gì được chọn. <option selected="true" disabled="disabled" value="">Choose Tagging</option>
dùng34612


10

Tôi biết bạn hỏi làm thế nào để vô hiệu hóa tùy chọn, nhưng tôi cho rằng kết quả trực quan của người dùng cuối là giống với giải pháp này, mặc dù có lẽ nó ít đòi hỏi tài nguyên hơn.

Sử dụng thẻ optgroup , như vậy:

<select name="tagging">
    <optgroup label="Choose Tagging">
        <option value="Option A">Option A</option>
        <option value="Option B">Option B</option>
        <option value="Option C">Option C</option>
    </optgroup>
</select>

3
Điều này không hoạt động, OP cần được chọn theo mặc định jsfiddle.net/tomsihap/5xm7grnb
tomsihap

10

Electron + React Hãy để hai tùy chọn đầu tiên của bạn giống như thế này

<option hidden="true>Choose Tagging</option>
<option disabled="disabled" default="true">Choose Tagging</option>

Đầu tiên hiển thị khi đóng Thứ hai để hiển thị đầu tiên khi danh sách mở


8

Sử dụng hidden.

<select>
   <option hidden>Choose</option>
   <option>Item 1</option>
   <option>Item 2</option>
</select>

Điều này không bỏ đặt nó nhưng bạn có thể ẩn nó trong các tùy chọn trong khi nó được hiển thị theo mặc định.


6

Một giải pháp thẻ CHỌN khác cho những người muốn giữ tùy chọn đầu tiên để trống.

<label>Unreal :</label>
<select name="unreal">
   <option style="display:none"></option>
   <option>Money</option>
   <option>Country</option>
   <option>God</option>
</select>


3
 selected disabled="true"

Dùng cái này. Nó sẽ hoạt động trong các trình duyệt mới


3

chúng ta có thể vô hiệu hóa bằng cách sử dụng kỹ thuật này.

<select class="form-control" name="option_select">
  <option selected="true" disabled="disabled">Select option </option>
  <option value="Option A">Option A</option>
  <option value="Option B">Option B</option>
  <option value="Option C">Option C</option>
</select>

1

Nếu bạn đang sử dụng jQuery để điền vào phần tử chọn, bạn có thể sử dụng phần này:

html

<select id="tagging"></select>

js

array_of_options = ['Choose Tagging', 'Option A', 'Option B', 'Option C']

$.each(array_of_options, function(i, item) {
    if(i==0) { sel_op = 'selected'; dis_op = 'disabled'; } else { sel_op = ''; dis_op = ''; }
    $('<option ' + sel_op + ' ' + dis_op + '/>').val(item).html(item).appendTo('#tagging');
  })

Điều này sẽ cho phép người dùng xem tùy chọn đầu tiên dưới dạng tiêu đề bị vô hiệu hóa ('Chọn gắn thẻ') và chọn tất cả các tùy chọn khác.

nhập mô tả hình ảnh ở đây


0
            <select name="dept" id="dept">
                <option value =''disabled selected>Select Department</option>
                <option value="Computer">Computer</option>
                <option value="electronics">Electronics</option>
                <option value="aidt">AIDT</option>
                <option value="civil">Civil</option>
            </select>

sử dụng "CHỌN" tùy chọn mà bạn muốn chọn bằng cách sử dụng defult. cảm ơn


Hướng dẫn này đã được đăng trên câu hỏi này ở đây: stackoverflow.com/a/42997841/2943403 Câu trả lời của bạn không thêm giá trị mới cho trang và chỉ đóng góp cho sự phình to của trang.
mickmackusa

-1

Bạn có thể đặt tùy chọn nào được chọn theo mặc định như thế này:

<option value="" selected>Choose Tagging</option>

Tôi sẽ đề nghị sử dụng javascript và JQuery để quan sát sự kiện nhấp chuột và vô hiệu hóa tùy chọn đầu tiên sau khi đã chọn cái khác: Đầu tiên, cung cấp cho phần tử một ID như vậy:

<select id="option_select" name="tagging">

và tùy chọn một id:

<option value="" id="initial">Choose Tagging</option>

sau đó:

<script type="text/javascript">

$('option_select').observe(click, handleClickFunction);

Sau đó, bạn chỉ cần tạo chức năng:

function handleClickFunction () {

if ($('option_select').value !== "option_select") 
{
   $('initial').disabled=true; }
}

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.