jQueryとの戦いにはかなり心地よくあります。 私はプロジェクトを編集するために使用されるブートストラップ・モーダルを持っており、編集ボタンがクリックされたときにAJAXを使用してフィールドに値を設定しています。これは素晴らしい作品が、プロジェクトは(モーダルではチェックボックス)複数の部門にすることができPHPで複数の重複キーをjsonに返すAJAXレスポンス
これは私がモーダルを移入しています方法です:
$.ajax({
url: 'project_tasks.php?task=select_project&pjct_id=' + id,
method: 'GET',
dataType: 'json'
}).success(function(response) {
// Populate the form fields with the data returned from server
$('#edit_project')
.find('[name="project_id"]').val(response.project_id).end()
.find('[name="project_title"]').val(response.project_title).end()
.find('[name="project_bgcolor"]').val(response.project_bgcolor).end()
.find('[name="project_desc"]').val(response.project_desc).end()
.find(':checkbox[name^="department"]').each(function() {
if($(this).val() == response.dpmt_id) {
console.log("depart: " + response.dpmt_id);
$(this).prop('checked', true);
}
});
});
、PHPは(まだエスケープないけど行います)されます:
$pjct_id = $_GET['pjct_id'];
$pjct = Projects::find_by_id($pjct_id);
$dpmts = Projects_departments::find_all_by_pjct_id($pjct_id);
foreach ($dpmts as $dpmt) {
$response_array['dpmt'] = $dpmt->department_id;
}
$response_array['project_id'] .= $pjct->id;
$response_array['project_title'] .= $pjct->project_title;
$response_array['project_bgcolor'] .= $pjct->project_bgcolor;
$response_array['project_desc'] .= $pjct->project_desc;
echo json_encode($response_array);
明らかチェックボックスをチェックするために、私は「dpmt」のたびに上書きされていることを知っているので、私は唯一のJSON dpmt : 1
ではなく、各部署のIDを取得しますが、私はdpmt: 1, dpmt: 2, dpmt: 3
ような何かを達成したいと思いますし、そのループスルー。
うまくいけば私は十分に(妻は私を急いでいる) 前もってありがとう。
完璧、ありがとうございます!私はfind( ':checkbox [name = "department"を検索する(':checkbox [name = "department []" –
フィードバックに感謝します。 else。 –