2012-05-14 29 views
8

Tôi biết chúng tôi không thể chỉ đọc được nút radio và hộp kiểm. Tôi đã cố gắng vô hiệu hóa nút radio và hộp kiểm nhưng trong IE nó không rõ ràng.Cách tắt chức năng vô hiệu hóa/chỉ đọc như nút radio và hộp kiểm đã chọn

Có cách nào khác để làm tương tự như tắt/chỉ đọc bằng jQuery, CSS, JavaScript không?

+0

Có, nhưng nó thực hiện chính xác giống như những gì bạn đã thử, đặt thuộc tính bị vô hiệu hóa thành vô hiệu hóa ... – adeneo

+0

mã bạn đang làm cho điều đó .. –

Trả lời

12

Bạn có thể sử dụng đoạn mã sau để tránh các nhấp chuột trên các yếu tố mà bạn không muốn người dùng thay đổi

$(':radio,:checkbox').click(function(){ 
    return false; 
}); 

Bạn có thể sử dụng bộ chọn thích hợp để hạn chế các nhấp chuột.

+0

cảm ơn nó hoạt động. Có thể áp dụng màu nền cho radiobuttton và hộp kiểm, để nó trông giống như bị vô hiệu hóa mà không sử dụng hình ảnh? Tôi đã thử sử dụng $ (': radio,: checkbox') .ss ("background-color", "red"); – Raje

+0

Tôi không nghĩ rằng bạn có thể làm điều đó.Bạn phải sử dụng một số loại hình ảnh cho mục đích đó. Nhưng nếu bạn muốn cung cấp cho nó một hiệu ứng vô hiệu hóa của nó tốt hơn để vô hiệu hóa nó, sau đó nó sẽ trông phù hợp trên tất cả các trình duyệt.Tôi nghĩ rằng u muốn vô hiệu hóa một hộp kiểm/nút radio mà không có hiệu ứng vô hiệu hóa. – LoneWOLFs

+0

Có, bạn đã đúng. Tôi muốn tắt chức năng như vô hiệu hóa. Nếu tôi đã chỉ định bị vô hiệu hóa đối với hộp kiểm và nút radio, nó sẽ không hiển thị rõ ràng trong IE. – Raje

7

Yon có thể cung cấp như thế này: -

i kịch bản của bạn

jQuery('#radio').attr('disabled','disabled'); 

Hoặc bạn có thể addClass theo bạn ..

nếu nó sẽ không tương thích với IE cho khả năng tương thích cũng ..

<meta http-equiv="X-UA-Compatible" content="IE=8" /> 
<meta http-equiv="X-UA-Compatible" content="IE=7" /> 

sau đó kiểm tra ..

bạn cũng có thể cung cấp cho như thế này: -

jQuery("#youridname input:radio").attr('disabled',true); 
+0

Tôi biết điều này là cũ, nhưng đối với bất kỳ ai bị cám dỗ sử dụng giải pháp này, hãy nhớ rằng các yếu tố bị vô hiệu sẽ không được đăng khi biểu mẫu được gửi. – blackandorangecat

1

Nếu nút radio đã được kiểm tra và nếu bạn click vào nút radio kiểm tra nó thay đổi giá trị từ true sang false. Đối với kịch bản này sau mã số hoạt động

$(document).ready(function() { 
    $('input[type = "radio"]').change(function() { 
     this.checked = false; 
    }); 
}); 
3
 selectedRow.find('input[type="radio"]:not(:checked)').each(function(){ $(this).attr('disabled', true); }); 

chọn hàng chỉ là yếu tố html dưới đây mà tôi muốn xác định vị trí các nút radio tôi đang quan tâm.
toàn bộ tập lệnh chỉ được gọi khi nút radio đã được chọn.
khi được thực hiện, nó định vị các nút radio chưa được chọn và tắt chúng.

do đó, cho tôi kết quả mong muốn của việc vô hiệu hóa các nút radio không được chọn, trong khi vẫn duy trì tùy chọn đã chọn.

kết quả này có vẻ là một lựa chọn tốt hơn, sau đó
1. đặt hình ảnh qua nút radio, để tránh người dùng khỏi một tùy chọn khác được chọn.
2. .click (function() {return false;}), chỉ ẩn lựa chọn khi tùy chọn chưa được chọn được chọn 3. tắt tất cả các nút radio, nơi lựa chọn bị mất.

hy vọng điều này sẽ giúp bạn,
cổ vũ.

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