【问题标题】:Display Array values in Table using Ajax code.使用 Ajax 代码在表中显示数组值。
【发布时间】:2018-08-15 22:52:06
【问题描述】:

这是我尝试过的代码,

<script type="text/javascript">
    $('#doctorselected').on('change', function(e){
      console.log(e);
      var doctorid = e.target.value;
      var url = '{{URL::to('getdocDetails')}}';
      $.ajax({
         type : 'get',
         url  : url,
         data : {'doctorid':doctorid},
         success:function(data){
           console.log(data);
           var d = $.parseJSON(data);
           console.log(d);
            var output = '';
            $.each(d,function(i,e) {
                output += '<tr><td>'+e.products+'</td></tr>'
            });
            $('#tbody').append(output);
         },
         error:function(data)
         {
           console.log(data);
         }
    });
  });
  </script>

这是这段代码的输出,

当我选择下拉列表时,将显示所有数组值,例如 A,B,C,D

我想在每一行中显示单个值

喜欢这个

A
B
C 
D

请帮帮我。

【问题讨论】:

  • 你能告诉我们d的内容,即console.log(d);的输出是什么?
  • d - 值 [{…}] 0 : {products: "Crocin,Sinarest"} 长度 : 1 proto : Array(0)
  • 数据值为 JSON 格式,但长度为 2,["[{"products":"Sinarest", "Globate -G"}]"] 我想处理这个并打印 Sinarent和表格中的 Globate-G

标签: html ajax laravel


【解决方案1】:

您作为each 方法的输入发送的数组目前只有一个项目,一个带有键products 的对象和带有逗号分隔的产品列表的值,在本例中为Crocin 和Sinarest:

[{ 
    products: "Crocin,Sinarest" 
}]

因此,列表将仅包含并显示一项,即此对象。

您需要将对象转换为包含产品的数组才能呈现列表。我建议在后端执行此操作。你可以用explode(",", "Crocin,Sinarest");来做到这一点

如果您不想更改后端,可以在 JavaScript 中执行以下操作:

$.each(d[0].products.split(","), function (index, product) {
    output += '<tr><td>' + product + '</td></tr>'
});

希望这会有所帮助!

【讨论】:

  • 非常感谢您的帮助。我得到了我想要显示的所需输出。根据您的建议,我使用了explode 函数来分隔逗号。这是输出 ["[{"products":"Sinarest", "Globate -G"}]"]。我只是想学习如何处理这个并在桌子上打印。你能帮帮我吗?并且 2. 您使用过 d[0] - 我可以知道第 0 个索引是什么吗?它是如何拆分和显示的?
  • 尝试对产品本身应用explode函数,然后你会得到一个只有产品作为输出的干净数组。 0 是索引,因为该示例是一个包含一个对象的数组,您必须先访问它。 .products 允许访问对象中的键 products。使用split(","),您可以将字符串转换为数组,用逗号作为分隔符。玩这个,记录输出,我相信你会找到解决方案。尝试仅返回包含 PHP 代码中产品的数组。然后你可以使用d 作为each 函数的输入。
  • 是的。我将只是尝试解析数组中的数据,而不是在视图页面中拆分。感谢您抽出宝贵的时间向我解释这些事情:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-07-18
  • 2016-03-26
  • 2017-12-17
  • 1970-01-01
  • 2016-11-25
  • 2015-07-24
  • 1970-01-01
相关资源
最近更新 更多