<form>
<input type="checkbox" key="1"/>
<input type="hidden" name="checked[1]" value="false">
<input type="checkbox" key="2"/>
<input type="hidden" name="checked[2]" value="false">
<input type="checkbox" key="3"/>
<input type="hidden" name="checked[3]" value="false">
<input type="checkbox" key="4"/>
<input type="hidden" name="checked[4]" value="false">
</form>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
$(document).ready(function() {
$('[key]').change(function() {
var key = $(this).attr('key');
$($('[name="checked[' + key + ']"]')).val($(this).is(':checked') ? 'true' : 'false');
});
});
</script>
đây là những gì tôi đang làm
Tôi đang sử dụng hai đầu vào một hộp kiểm là không có tên vì vậy nó sẽ không được gửi đến php , người khác bị ẩn sẽ không được hiển thị cho người dùng nhưng đó là nội dung sẽ được gửi tới php
sau đó với jquery khi người dùng chọn hộp jquery thay đổi giá trị của đầu vào bị ẩn thành true và khi bỏ chọn thay đổi giá trị thành false
nên giá trị sẽ luôn luôn được gửi cho php với giá trị đúng hay sai như string
bạn có thể thay đổi các giá trị mà bạn muốn gửi đến php bằng cách thay đổi này .is(':checked')?'true':'false')
một cái gì đó giống như .is(':checked')?1:0)
đó để gửi 1 và 0 thay vì đúng và sai
giải pháp khác là giải pháp rybo111
<input type="hidden" name="check" value="false">
<input type="checkbox" name="check" value="true">
nó sẽ gửi hai lựa chọn nhưng nếu hộp kiểm được kiểm tra i t sẽ ghi đè tùy chọn đầu tiên
nhưng nó không phải là đáng tin cậy 100% và nó sẽ gửi dữ liệu hơn đến máy chủ
đọc thêm về điều đó trong POSTing Form Fields with same Name Attribute
vì vậy nếu bạn muốn sử dụng giải pháp đơn giản mà không cần js sử dụng "html chỉ" nếu bạn muốn 100% giải pháp đáng tin cậy sử dụng "js"
bạn không thể làm điều đó với html để bạn có 2 tùy chọn 1 sử dụng javascript, 2 sử dụng danh sách thả xuống thay vì hộp kiểm – robert
tại sao không thêm vào php của bạn: $ checked = isset (_POST ['checked']) && _POST ['checked'] == 1; – sabkaraja
@robert Tôi nghi ngờ nhiều, một danh sách thả xuống không phải là một thay thế trong trường hợp này nhưng tôi sau đó mở thêm cho một giải pháp dựa trên JS. Tôi sẽ làm thế nào với JS? (Tôi có một kinh nghiệm rất hạn chế với JS) – Gurgy