php - 如何在php表中打印多个ajax响应值

标签 php jquery mysql ajax

我在打印表格时遇到 ajax 响应问题。我的ajax代码是这样的

$(document).ready(function(){

var terminalid=$('#terminal_id').val();
var pin=$('#pin').val();
var agentid=$('#agentid').val();

var agenterminal=terminalid.split(",");
var agent_id=agentid.split(",");
var agentaccountpin=pin.split(",");

var agr=[];
var pin_arr=[];
var ter_arr=[];

for (var i=0; i<agent_id.length; i++)
    agr.push( + agent_id[i] );

for (var j=0; j<agentaccountpin.length; j++)
    pin_arr.push( + agentaccountpin[j] );

for (var k=0; k<agenterminal.length; k++)
    ter_arr.push( + agenterminal[k] );

var final_arr=[];
for(var i=0; i<agr.length; i++)
{
    //alert(agr[i]);
    var datastring="terminal_id="+ter_arr[i]+"pin="+pin_arr[i]+"agentid="+agr[i];
    var geturl="myurl";
    $.ajax({
        type:"POST",
        url:geturl,
        data:datastring,
        success: function(resp){
            alert(resp);
            $("#balance").html(resp);
        }

     });
}

});

这是我的 PHP 代码:

 foreach ($this->agent_summary_results as $row)
 {
        // Some Code for Data printing in table format
        <tr>
            <td class="Row" width="12%" valign="top" >name</td>
            <td valign=top width="12%" class="Row">credit bal</td>
            <td>
              <div id="balance"><FONT COLOR=RED size=3>Calculating...</FONT></div>
            </td>
        </tr>
$terminalid[]=$terminal_id;
      $account_card_pin[]=$pin;
      $id_agent[]=$agentid;
    }
$agentterminalid=implode(",", $terminalid);
  $agentaccountpin=implode(",",$account_card_pin);
  $agent_id=implode(",",$id_agent);
<input type="hidden" name="terminal_id" id="terminal_id" value="<?php echo $agentterminalid;?>">
  <input type="hidden" name="pin" id="pin" value="<?php echo $agentaccountpin;?>">
  <input type="hidden" name="agentid" id="agentid" value="<?php echo $agent_id;?>">

例如我的o/p如下
S.无名余额

1 预计 12.34
2 测试计算..
3沙地计算..

像这样我得到了输出。在ajax中我得到所有回复。但在表中却没有显示出来。请帮我。怎么解决这个问题。谢谢

响应仅打印在第一行。但我总共有。

最佳答案

您应该在循环中构造一个 javascript 数组,然后使用该数组作为 data 发送单个 ajax 请求:

var dataArray = [];

for(var i=0; i<agr.length; i++)
{
    dataArray.push({
        terminal_id: ter_arr[i],
        pin: pin_arr[i],
        agentid: agr[i]
    });
}

$.ajax({
    type: "POST",
    url: "myurl",
    data: {
        mydata: dataArray // You will have a "$_POST['mydata']" variable in PHP
    }, 
    success: function(resp){
        $("#balance").html(resp);
    }
});

关于php - 如何在php表中打印多个ajax响应值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25906619/

相关文章:

php - 评估用户代码的安全问题是什么?

php - session_start() 关于非法字符、空 session ID 和失败 session 的问题

php - 如何清除 PrestaShop 中购物车中的所有产品

javascript - 迭代父元素

mysql - 匹配的行和更改的行之间的差异

php - 如何在 PHP 中解析 A​​pache 的错误日志?

jquery - Django 数据表加载 ajax 数据加载

javascript - 将 html 数据附加到内联脚本 html 数据并打印

mysql - 按使用标签的帖子数量对标签进行排序?

php - 在 MySQL 中更新表行的问题