Làm cách nào tôi có thể thêm một thuộc tính vào các thẻ HTML cụ thể trong jQuery?
Ví dụ, như HTML đơn giản này:
<input id="someid" />
Sau đó, thêm một thuộc tính bị vô hiệu hóa = "true" như thế này:
<input id="someid" disabled="true" />
Làm cách nào tôi có thể thêm một thuộc tính vào các thẻ HTML cụ thể trong jQuery?
Ví dụ, như HTML đơn giản này:
<input id="someid" />
Sau đó, thêm một thuộc tính bị vô hiệu hóa = "true" như thế này:
<input id="someid" disabled="true" />
Câu trả lời:
Bạn có thể thêm các thuộc tính bằng cách sử dụng attr
như vậy:
$('#someid').attr('name', 'value');
Tuy nhiên, đối với các thuộc tính DOM như checked
, disabled
và readonly
, cách thích hợp để làm điều này (kể từ JQuery 1.6) là sử dụng prop
.
$('#someid').prop('disabled', true);
$('#someid').prop('disabled', true);
không làm việc, nhưng $('#someid').attr('disabled', true);
hoạt động tốt.
attr
hay prop
, điều quan trọng là phải hiểu sự khác biệt giữa các thuộc tính và thuộc tính. Không hiểu sự khác biệt, bạn có thể gặp phải hành vi bất ngờ. Xem stackoverflow.com/a/6004028/3367343
Giải pháp tốt nhất: từ jQuery v1.6, bạn có thể sử dụng prop () để thêm thuộc tính
$('#someid').prop('disabled', true);
để loại bỏ nó, sử dụng removeProp()
$('#someid').removeProp('disabled');
Cũng lưu ý rằng không nên sử dụng phương thức .removeProp () để đặt các thuộc tính này thành false. Khi một thuộc tính gốc được loại bỏ, nó không thể được thêm lại. Xem .removeProp () để biết thêm thông tin.
Bạn có thể làm điều này với .attr
chức năng của jQuery , nó sẽ đặt các thuộc tính. Loại bỏ chúng được thực hiện thông qua .removeAttr
chức năng.
//.attr()
$("element").attr("id", "newId");
$("element").attr("disabled", true);
//.removeAttr()
$("element").removeAttr("id");
$("element").removeAttr("disabled");
$('#someid').attr('disabled', 'true');
Thêm thuộc tính là:
$('#Selector_id').attr('disabled',true);
Điều này có thể hữu ích hơn ....
$("element").prop("id", "modifiedId");
//for boolean
$("element").prop("disabled", true);
//also you can remove attribute
$('#someid').removeProp('disabled');
.attr()
để thiết lập hoặc đọc nó. Xem đoạn "Thuộc tính so với thuộc tính" trong .prop () và .attr () trong tài liệu jQuery. Cũng xem câu trả lời của Paul Rosania ở trên.
$('#yourid').prop('disabled', true);
sử dụng mã này <script> $('#someid').attr('disabled,'true'); </script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
Văn bản bên trong ký hiệu $ chọn tất cả phần tử có id = someid, thuộc tính bị vô hiệu hóa của id này thay đổi thành true