Tại sao chỉ có một giá trị của mảng giá trị hộp kiểm "db" được gửi tới tập lệnh phía máy chủ?Đăng mảng nhiều giá trị hộp kiểm
jQuery:
$(".db").live("change", function() {
$(this).add($(this).next("label")).add($(this).next().next("br")).remove().insertAfter(".db:last + label + br");
var url = "myurl.php";
var db = [];
$.each($('.db:checked'), function() {
db.push($(this).val());
});
if(db.length == 0) {
db = "none";
}
$.post(url, {db: db}, function(response) {
$("#dbdisplay").html(response);
});
return true;
});
HTML:
<input type="checkbox" name="db[]" class="db" value="track"/><label for="track">track</label></br>
<input type="checkbox" name="db[]" class="db" value="gps"/><label for="gps">gps</label></br>
<input type="checkbox" name="db[]" class="db" value="accounting"/><label for="accounting">accounting</label></br>
Sửa: tôi đã kết thúc việc trả lời câu hỏi của riêng tôi, nhưng không ai có tài liệu hướng dẫn (hoặc giải thích) về việc tại sao Điều này là cần thiết? Thật khó cho tôi để tìm ra câu trả lời chính xác (vì thế bài viết sau khi chết).
Chắc chắn, đó là tài liệu, kể từ khi bạn sử dụng php là tập lệnh phía máy chủ, hãy kiểm tra tại đây: http://www.php.net/manual/en/faq.html.php#faq.html.báo cáo và tại đây: http://www.php.net/manual/ vi/language.variables.external.php –
Một chút về chủ đề, giá trị 'for' của nhãn nên là id đầu vào, không phải là giá trị đầu vào. –