如何使用responce显示多个选定的值

时间:2016-10-18 09:39:17

标签: javascript php jquery ajax checkbox

我正在尝试将已存储的值显示为已选中。

我的问题是我正在尝试从os_hostel_facility的映射表中获取多个便利 但当我试图表明只有第一个值即将出现在控制台中,即使没有显示为选中我怎么能这样做我的代码在底部:

如果问题未达到标准,请建议编辑..!

这是我的剧本:

   success: function (response) {
    $("#viewhostelfacility").val(response['facility']['id_facility']);
    console.log(response['facility']['id_facility']); 
  

这里只有第一个值来了,我想显示整个数组   如选中

这是我的更新表格代码

<ul id="hostel_facility" class="dropdown-menu dropdown-select">
    <?php  $facility = $conn->query("SELECT * FROM os_facilities  ORDER BY id_facility ASC");
        while ($facilityresult = $facility->fetch_assoc()) { ?>
        <li><a><input type="checkbox" name="hostel_facility[]" id="viewhostelfacility" value="<?php  echo $facilityresult['id_facility']; ?>" /><?php echo $facilityresult['facility_name']; ?></a></li>
    <?php } ?>
</ul>

这是我的控制器页面,我发送ersponse:

$facilitysearch= $conn->query("SELECT * From os_hostel_facility WHERE id_hostel='".$_POST['hostelId']."'") or die(mysql_error());
$viewfacility=$facilitysearch->fetch_assoc();
$response['facility'] = $viewfacility;

enter image description here enter image description here enter image description here

1 个答案:

答案 0 :(得分:1)

您可以创建每个函数来获取数组中的所有数据:

success: function (response) {
    $.each(response,function(i,e)){
        $("#viewhostelfacility").val(e['facility']['id_facility']);
        console.log(e['facility']['id_facility']);
    }

发给你一个Json对象?如果是,您可以轻松使用数据标记:

<强>对象

{"os_hostel":[
    {"facility":"Iron","id_facility":"1"},
    {"facility":"Landry","id_facility":"2"}
]}

<强>代码

success: function (response) {
    var hostel = response.os_hostel;
    $.each(hostel,function(i,e){
        $("#viewhostelfacility").val(e.facility);
        console.log(e.facility);
    })

<强>段

&#13;
&#13;
var obj = {"os_hostel":[
  {"facility":"Iron","id_facility":"1"},
  {"facility":"Landry","id_facility":"2"}
]}

var hostel = obj.os_hostel;
$.each(hostel,function(i,e){
    console.log(e.facility);
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
&#13;
&#13;