如何使用AJAX将值附加到表中

时间:2016-05-20 10:04:31

标签: javascript php

这里我使用AJAX将javascript变量传递给PHP函数,这里它将正常工作,** console.log(fname); **这里我得到了所有值,但附加表格意味着我得到[object Object] ,怎么解决这个错误

<script type="text/javascript">
 $(document).ready(function(){
    $("#reservation").on("change", function() {
       var reservation = $(this).val();
          $.ajax({
              type: 'post',
              url: 'date-range.php',
              data: {
                  logindate: reservation,
              },
              success: function( data ) {
              var res=jQuery.parseJSON(data);// convert the json
                console.log(res);
                 if(res['status']=="success"){

                  var htmlString='';

                   $.each( res['data'], function( key, value ) {

                   htmlString+='<tr>';
                   var ssm_id = value.ssm_id; // here i got ssmid
                   htmlString+='<td>'+value.ssm_id+'</td>';
                   htmlString+='<td>'+ $.ajax({
                    type: 'post',
                    url: 'config/functions.php',
                   data: {
                        ssm_id: ssm_id,
                    },
                    success: function( fname ) {
                    console.log(fname);//HERE I GOT ALL VALUES
                    htmlString+='<td>'+fname+'</td>';// BUT HERE I CAN'T APPENT THE VALUES IN TABLE 
                     }
                   });+'</td>';
                   htmlString+='<td>'+'Muthuraja'+'</td>';
                   htmlString+='<td>'+'20-05-2016'+'</td>';
                   htmlString+='<td>'+'status'+'</td>';
                   htmlString+='<td>'+value.source+'</td>';
                   htmlString+='<td>'+ "<span style='color:green'>View Profile</span>"+'</td>';


                  /* htmlString+='<td>'+ "<span style='color:green'>Completed</span>"+'</td>';*/

                   htmlString+='</tr>';
                    });
                   $('#datatable-editable > tbody').empty().append(htmlString);
                 }
                 else{
                  $('#datatable-editable > tbody').empty().append("<center style='height:100px;padding-top:36px;color:red;font-size:17px;'><b>No matching records found</b></center>");
                 }
              }
          });
        });
    });
    </script>

的functions.php

<?php

$ssm_id = $_POST['ssm_id'];
if(!empty($ssm_id)){
    echo firstname($ssm_id);
}

function firstname($id)
{
    $f="SELECT firstname FROM register WHERE matri_id='$id'";
    $rr=mysql_query($f);
    while($row=mysql_fetch_array($rr)) {
        $firstname = $row['firstname'];
    }
    return $firstname;
}
?>

1 个答案:

答案 0 :(得分:0)

如果不知道JSON的确切格式,很难给出明确的答案。但是,假设您有一个代表您的行的JSON对象数组,您需要迭代该数组,并为每个对象执行以下操作:

创建新的import net.sf.ehcache.Cache; import net.sf.ehcache.config.CacheConfiguration; public class EhcacheCacheManager { private Cache cache; public EhcacheCacheManager(Cache cache) { this.cache = cache; } public long getTimeToLive() { long timeToLive = 0; CacheConfiguration config = cache.getCacheConfiguration(); timeToLive = config.getTimeToLiveSeconds(); return timeToLive; } } 元素 - <tr>
对于每个信息项(我假设每个var $tr = $('<tr/>');有一个项目),创建一个<td>元素并设置其内容 - <td>(x是您当前的对象,y是对象中的一个字段)然后将其附加到行 - var $td = $('<td/>').html(x.y)
在现有表格的最后一行之前附加行 - $tr.append($td);.
根据问题中提供的其他信息,以下代码应该执行您需要执行的操作:

$('.list-order tr:last').before($tr);