我有一个表,其中包含输入文本,这些文本计算JQuery中的行总和和列总和。
可以将AJAX表格中的表格发送到PHP,并在那里计算行和列吗?
这是我的桌子:
<table id="sum_table">
<tr>
<td><input value="0" class="sum1" /></td>
<td><input value="0" class="sum2"/></td>
<td><input value="0" class="sum3"/></td>
<td class="total">0</td>
</tr>
<tr>
<td><input value="0" class="sum1"/></td>
<td><input value="0" class="sum2"/></td>
<td><input value="0" class="sum3"/></td>
<td class="total">0</td>
</tr>
<tr>
<td><input value="0" class="sum1"/></td>
<td><input value="0" class="sum2"/></td>
<td><input value="0" class="sum3"/></td>
<td class="total">0</td>
</tr>
<tr class ="totalCol">
<td>0</td>
<td>0</td>
<td>0</td>
</tr>
</table>
<button id="tabla">+</button>
<button id="moes">Hide/Show</button>
这是我对列求和的方式:
//Mostramos y ocultamos la tabla
$("#moes").click(function(){
$("table").toggle();
});
//Sumamos las columnas
$(document).on('keyup change','#sum_table tr:not(.totalCol) input:text',function() {
var $table = $(this).closest('table');
var total = 0;
var thisNumber = $(this).attr('class').match(/(\d+)/)[1];
$table.find('tr:not(.totalCol) .sum'+thisNumber).each(function() {
total += parseInt(this.value);
});
FULL CODE HERE
先感谢您 :)
参考方案
是的。
$(document).ready(function() {
$('#tabla').click(function() {
var col1 = [];
var col2 = [];
var col3 = [];
// collect all data from table col1
$.each($('table td input.sum1'), function(k, v){
col1.push($(v).val());
});
// collect all data from table col2
$.each($('table td input.sum2'), function(k, v){
col2.push($(v).val());
});
// collect all data from table col3
$.each($('table td input.sum3'), function(k, v){
col3.push($(v).val());
});
// send data to server
$.ajax({
url: 'calc.php',
type: 'post',
data: {'col1': col1, 'col2': col2, 'col3': col3,},
dataType: 'json',
success: function(data){
// insert your server-calculated data to dom
$('.totalCol td:nth-child(1)').text(data.SumCol1);
$('.totalCol td:nth-child(2)').text(data.SumCol2);
$('.totalCol td:nth-child(3)').text(data.SumCol3);
}
});
});
});
您可以例如在服务器上汇总您的帖子。 calc.php
:
$SumCol1 = _sumUp($_POST['col1']);
$SumCol2 = _sumUp($_POST['col2']);
$SumCol3 = _sumUp($_POST['col3']);
echo json_encode(array(
"SumCol1" => $SumCol1,
"SumCol2" => $SumCol2,
"SumCol3" => $SumCol3
));
function _sumUp($data)
{
$sum = 0;
foreach($data as $k => $v)
{
$sum += $v;
}
return $sum;
}
注意:未经测试。仅是基本结构。
jQuery-PHP类选择器问题 - php所以我有这样的事情:<?php foreach($post_array as $post): ?> <div class="postBodyWrapper"> <div class="vid-link"> <script type="text/javascript…
jQuery / Ajax请求被发送两次 - php我已经一遍又一遍地扫描我的代码,但似乎找不到问题。当我单击链接#add-user-btn时,文件actions.php被调用了两次(因此PHP脚本执行了两次)。这是脚本:我想它与ajax请求前面的javascript有关吗?$(function () { $("#add-user-btn").click(function (e) { e.…
jQuery ajax无法正常工作 - php我制作了一个测试jQuery ajax脚本,并在提交时将其附加到表单上,但是尽管我在函数末尾添加了return false,但页面在提交时仍保持刷新状态,并且也没有得到任何响应。表单如下所示:<form id="LogInForm" onsubmit="return LogIn();"> <input…
jQuery text()使用nl2br忽略<br /> - php我在通过json检索文本信息时遇到问题,并希望显示格式正确的<p>标记。想象以下文本: 说明:检索与jQuery对象匹配的DOM元素。 参见:https://api.jquery.com/get/如您所见,它有三行。当我通过PHP直接写入<p>标记时,它可以工作。<p>echo nlbr2($comment);</p…
jQuery不起作用 - php我正在使用带有ajax的jquery。有时,给出错误$未定义。这是我的代码:<script language="javascript" type="text/javascript"> var base_path="<? echo $this->baseUrl().'/…