0

データベースから取得したデータを使用して、複数選択ボックスの値を自動的に選択しようとしましたが、機能しません...

これはhtmlマルチセレクトのコードです

<select name="category" id="category" multiple="multiple" class="select validate[required]" style="width:100%">

</select>

ページの読み込み時に、データベースから複数選択のオプションを動的に読み込みます (mysql)

$.ajax({
        url:'search/category.php',
        type:'POST',
    data:{cat_id:1},   //1 means jobs category
    async:true,
    success: function(data){
    $("#category").html(data);
   }
});

しかし、複数選択で値を自動選択する必要がある場合、機能しません

 <?php

    $qry ="select tags from posts where id='$id'";
    $res = mysqli_query($con,$qry);
    $row = mysqli_fetch_assoc($res);
    $tags = $row['tags'];
    ?>


<script>

  $(function(){
           $("#category").val(<?php echo $tags; ?>);     //example: .val(3);
        }

</script>
4

2 に答える 2

0

ajaxは正しいですが、選択オプションを正しくエコーする必要があります

カテゴリ関数でこれを試してください:

foreach ($tags as $tag=>$val) {
echo "<option value=".$val." > ".$tag."</option>";

}
于 2013-09-12T08:30:01.517 に答える
-1

$("#category").val(); に引用符がありません。ライン。このフィドルをチェックしてください。

$("#category").val( "'" + <?php echo $tags; ?> + "'");

動作させる必要があります

于 2013-09-12T08:30:26.770 に答える