我花了很多时间来查找如何做到这一点。基本上,我有几个复选框,我通过AJAX发送到PHP脚本,我希望PHP脚本回显每个选定复选框的值。
以下是我的复选框的代码:
while ($template = $stmt->fetch(PDO::FETCH_ASSOC)){
echo("<input class='checkbox templateSelectBox' name='RelatedTemplates[]' data-template='". $template['ID'] ."' value='".$template['ID']."' type='checkbox'> <p class='label label-default'>". $template['Name'] ."</p><br>");
}
使用该PHP代码,页面上有3个复选框。以下是发送选中复选框的AJAX:
$.ajax({
type: 'POST',
url: 'inc/ajax/addserver.ajax.php',
data: {'SelectedTemplates': $(".templateSelectBox:checked").serialize()},
success: function(data){
$("#responses").html(data);
} })
然后说如果我检查第二个复选框并使用echo($_POST['SelectedTemplates'])
回显它,它会回显RelatedTemplates%5B%5D=2
,我不完全理解为什么。所有我期待的是复选框的值,它只是一个数字。相反,我得到了那个字符串。