我使用此代码获取多个复选框的值。我希望任何人指导我一个教程,可以告诉我如何在不刷新页面的情况下完成它。以下是我的代码。
<form action="#" method="post">
<input type="checkbox" name="check_list[]" value="C/C++"><label>C/C++</label><br/>
<input type="checkbox" name="check_list[]" value="Java"><label>Java</label><br/>
<input type="checkbox" name="check_list[]" value="PHP"><label>PHP</label><br/>
<input type="submit" name="submit" value="Submit"/>
</form>
<?php
if(isset($_POST['submit'])){
if(!empty($_POST['check_list'])){
// Loop to store and display values of individual checked checkbox.
foreach($_POST['check_list'] as $selected){
echo $selected."</br>";
}
}
}
?>
答案 0 :(得分:-2)
我的猜测是他知道如何使用PHP而不是如何使用jQuery。所以这里:
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
</head>
<body>
<form id="choicesForm" action="#" method="post">
<input type="checkbox" name="check_list[]" value="C/C++"><label>C/C++</label><br/>
<input type="checkbox" name="check_list[]" value="Java"><label>Java</label><br/>
<input type="checkbox" name="check_list[]" value="PHP"><label>PHP</label><br/>
<input type="submit" name="submit" value="Submit"/>
</form>
<script>
jQuery('#choicesForm').submit(function(e){
e.preventDefault();
selectedItems = [];
jQuery('#choicesForm input[name="check_list[]"]:checked').each(function(index){
selectedItems.push(jQuery(this).val());
});
alert('selected items: ' + selectedItems.join(', '));
});
</script>
</html>
如果PASSING是核心问题,那么PHP应该只返回
<?php
if(isset($_POST['submit'])){
if(!empty($_POST['check_list'])){
echo json_encode(join('<br/>',$_POST['check_list']));
}
}
Jquery应该使用AJAX读取哪些内容。
应该通过使用done
捕获PHP响应来读取ajax的结果。详细解释http://api.jquery.com/jquery.ajax/