phpでajax、jquery、mysql、チェックボックスでデザインを作りました。それはそのようなものです:
チェックボックス付きのボックスがあります。そして、空の箱がもう一つあります。最初のボックスでチェックボックスをオンにすると、そのチェックボックスに関する情報が空のボックスに表示されます。しかし、別のチェックボックスをクリックすると、最初にクリックした情報が消え、現在の選択のみが表示されます。つまり、古いセレクションに新しいセレクションを追加したいということです。また、チェックボックスをオフにしたときに、2 番目のボックスの情報を削除するにはどうすればよいですか。ありがとうございました。
HTML コードは次のとおりです。
<div id="first_box">
<label class='checkbox'>
<input type='checkbox' id=1>
First checkbox
</label>
<label class='checkbox'>
<input type='checkbox' id=2>
Second checkbox
</label>
<label class='checkbox'>
<input type='checkbox' id=3>
Third checkbox
</label>
</div>
<div id="second_box"> </div>
ここにjqueryコードがあります:
$(document).ready(function() {
$("#first_box input:checkbox").change(function() {
if($(this).is(":checked")) {
$.post("/here/is/url", { strID:$(this).attr("id"), strState:"1" },
function(data) {
$("#second_box").html(data);
});
} else {
$.ajax({
url: 'here/is/url/',
type: 'POST',
data: { strID:$(this).attr("id"), strState:"0" }
});
}
});
});
ajax リクエストの php コードは次のとおりです。
$strID = $_POST['strID'];
$strState = $_POST['strState'];
if ($strState) { //if checkbox is clicked
//I fetch data about checkbox which is clicked
$infos = $this->info_model->get_info_from_checkbox_id($strID);
foreach ($infos as $info) {
echo "<label class='checkbox'>
<input type='checkbox'>".$info->information .
"</label>";
}
} else { // if it is unchecked
// I do not know how to delete
}