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 回答