2017-05-09 56 views
2

我必须选择多个测试和日期并提交根据测试点击后,实验室的名称被加载在选择选项环Ajax响应

阿贾克斯脚本

$('[name=submits]').click(function(e) 
{ 
    e.preventDefault(); 
    var array = []; 
    $('select :selected').each(function(i,value) 
    { 
     array[i] = $(this).val(); 
    }); 
    var testdate = $("#appointmentdate10").val(); 
    //here make your ajax call to a php file 
    $.ajax({ 
     type: "POST", 
     url: "http://localhost/refer/index.php/details", 
     data: { laboratory_tests: array, testdate: testdate }, 
     success: function(data){ 
      // alert(data); 
      console.log(data); 
      var selOpts = ""; 
      for (i=0;i<data.length;i++) 
      { 
       var id = data[i]['laboratory_id']; 
       var val = data[i]['laboratory_name']; 
       selOpts += "<option value='"+id+"'>"+val+"</option>"; 
      } 
      $('#yourSelect').append(selOpts); 
     } 
    }); 
}); 

阿贾克斯成功响应是:

[ 
    {"laboratory_id":"19","laboratory_name":"ghc","laboratory_address":"cgc","laboratory_place":"jhggj","laboratory_tests":"MRI R\/L SHOULDER WITH CONTRAST"}, 
    {"laboratory_id":"20","laboratory_name":"BBNB","laboratory_address":"sdfds","laboratory_place":"sdfsd","laboratory_tests":"MRI R\/L SHOULDER WITH CONTRAST"}, 
    {"laboratory_id":"22","laboratory_name":"Anand","laboratory_address":"bsk","laboratory_place":"bengaluru","laboratory_tests":"MRI R\/L SHOULDER WITH CONTRAST"} 
] 

HTML

<select class="form-control" id="yourSelect"> 

</select> 

但我不能够选择标签

+0

你可以检查'数据[I] [ 'laboratory_id']'的'的console.log(数据);' – StreetCoder

+1

基本$ .ajax代码在这里工作正常:https://jsfiddle.net/kabmqdpt/。需要更多关于什么是或没有发生的细节。请花一些时间阅读[问] – charlietfl

+0

是的,但我得到的价值作为undefined在我的选择标签 – user5370838

回答

1

显示如果从Ajax请求,那么你需要需要添加dataTypejson期待JSON数据。

$('[name=submits]').click(function(e) 
{ 
    e.preventDefault(); 
    var array = []; 
    $('select :selected').each(function(i,value) 
    { 
     array[i] = $(this).val(); 
    }); 
    var testdate = $("#appointmentdate10").val(); 
    //here make your ajax call to a php file 
    $.ajax({ 
     type: "POST", 
     dataType: "json", 
     url: "http://localhost/refer/index.php/details", 
     data: { laboratory_tests: array, testdate: testdate }, 
     success: function(data){ 
      // alert(data); 
      console.log(data); 
      var selOpts = ""; 
      for (i=0;i<data.length;i++) 
      { 
       var id = data[i]['laboratory_id']; 
       var val = data[i]['laboratory_name']; 
       selOpts += "<option value='"+id+"'>"+val+"</option>"; 
      } 
      $('#yourSelect').append(selOpts); 
     } 
    }); 
}); 
1

通过结果这样的尝试循环:

success: function(data){ 
      // alert(data); 
      console.log(data); 
      var selOpts = ""; 

      $.each(data, function(k, v) 
      { 
       var id = data[k].laboratory_id; 
       var val = data[k].laboratory_name; 
       selOpts += "<option value='"+id+"'>"+val+"</option>"; 
      }); 
      $('#yourSelect').append(selOpts); 
     }