我正在使用内联编辑来编辑td并且在编辑之后我正在使用编辑的值进行一些计算,并且我在没有刷新页面的情况下显示特定td的计算值,我的问题是如果我正在使用编辑的值进行两次计算我想显示不同td中的计算值,但我无法显示,因为现在它显示最后两个td中的计算值。我想用不同的td显示计算值,任何人都可以指导我如何做到这一点
java脚本:
<script>
$(document).ready(function(){
$('td.edit').click(function(e){
success: function(data){
$('#CPH_GridView1_supplier_total_cost'+arr[2]).empty();
$('#CPH_GridView1_supplier_total_cost'+arr[2]).append(data);
$('#clienttotalprice'+arr[2]).empty();
$('#clienttotalprice'+arr[2]).append(data);
$('.ajax').html($('.ajax input').val());
$('.ajax').removeClass('ajax');
}}); }
}
);
});
</script>
HTML
<td id="CPH_GridView1_supplier_total_cost'.$rows['id'].'" style="width:182px" class="edit supplier_total_cost '.$rows["id"].'">'.$rows["supplier_total_cost"].'</td>
<td id="clienttotalprice'.$rows['id'].'" style="width:217px" class="edit clienttotalprice '.$rows["id"].'">'.$rows["clienttotalprice"].'</td>
updatedetailed.php
<?php
print $suppliertotalcost;
print $clienttotalprice;
?>
答案 0 :(得分:1)
您正在使用print语句两次,当它返回到AJAX调用时,它被视为一个数据。
而是这样做。在updatedetailed.php
:
$result=array();
$result['suppliertotalcost']=$suppliertotalcost;
$result['clienttotalprice']=$clienttotalprice;
echo json_encode($result);
在你的AJAX电话中:
$.ajax({ type: "POST",
url:"updatedetailed.php",
data: "value="+$('.ajax input').val()+"&rowid="+arr[2]+"&field="+arr[1],
success: function(res){
data = jQuery.parseJSON(res); //added line
$('#CPH_GridView1_supplier_total_cost'+arr[2]).empty();
$('#CPH_GridView1_supplier_total_cost'+arr[2]).append(data.suppliertotalcost); //changed
$('#clienttotalprice'+arr[2]).empty();
$('#clienttotalprice'+arr[2]).append(data.clienttotalprice); //changed
$('.ajax').html($('.ajax input').val());
$('.ajax').removeClass('ajax');
}});