0

我有这张我用 jquery 和 ajax 构建的表(观看一些教程,所以我不是高级程序员)。好吧,我要做的是在表中插入一些值,我需要在输入表单中获取这些值的所有总和。

我可以这样做,但我需要的是在不刷新页面的情况下获得总和,所以每当我在 Value 列中输入:200 时,总和应该变为:

Sum + 200

请我需要一些帮助来做什么,我已经搜索了datagrid,但我真的不知道我该怎么做。谢谢

输入的php代码:

<table class="vlera">

<tr id="<?php echo $id; ?>" class="edit_tr">

<td class="edit_td">
<span id="first_<?php echo $id; ?>" class="text"><?php echo $kodi; ?></span>
<input type="text" value="<?php echo $kodi; ?>" class="editbox" id="first_input_<?php echo $id; ?>" /&gt;
</td>

<td class="edit_td">
<span id="last1_<?php echo $id; ?>" class="text"><?php echo $pershkrimi_pjeses; ?></span>
<input type="text" value="<?php echo $pershkrimi_pjeses; ?>" class="editbox" id="last_input1_<?php echo $id; ?>"/>
</td>
<td class="edit_td">
<span id="last_<?php echo $id; ?>" class="text"><?php echo $vlera; ?></span>
<input type="text" value="<?php echo $vlera; ?>" class="editbox" id="last_input_<?php echo $id; ?>"/>
</td>
<td class="edit_td">
<span id="last2_<?php echo $id; ?>" class="text"><?php echo $kosto; ?></span>
<input type="text" value="<?php echo $kosto; ?>" class="editbox" id="last_input2_<?php echo $id; ?>"/>
</td>

</tr>
<?php
}
?>
</table>

<?php
$sql_shuma="SELECT SUM(vlera) AS shuma FROM servis_pjeset_perdorura WHERE random=$random";
$resultshuma = odbc_exec($connection, $sql_shuma) or die(odbc_error());
while( $rowshuma = odbc_fetch_array($resultshuma ) ) {
           $total1 = $rowshuma['shuma'];
}
?>
<label for='shuma'>Shuma:</label>
<input id="shuma" name="shuma" type="text" value=" <?php echo $total1;?>"  size="20" />
4

3 回答 3

1

您发布的代码并没有真正显示完整格式(输入的样子)......但是如果您执行以下操作:

$(".values").keyup(function() {
    var sum = 0;
    $(".values").each(function(){
        sum += Number($(this).val());
    });
    $("#shuma").val(sum)
});

并且您想要用于总和的每个文本输入都有一类“值”,它应该可以工作。 http://jsfiddle.net/NNbtk/

于 2013-04-04T11:39:56.500 回答
0

试试这个代码......这个代码在输入值时获取文本框的值并将其添加到总和中。

$(document).ready(function(){
   $('#shuma').keyup(function(){
   var val=$('#shuma').val();
   sum=sum+val;
    });
});
于 2013-04-04T11:44:27.517 回答
0

只需将此代码放在另一个 php 文件中...比如 abc.php

<?php
$sql_shuma="SELECT SUM(vlera) AS shuma FROM servis_pjeset_perdorura WHERE random=$random";
$resultshuma = odbc_exec($connection, $sql_shuma) or die(odbc_error());

while( $rowshuma = odbc_fetch_array($resultshuma ) ) {
           $total1 = $rowshuma['shuma'];
}
echo $total1;
?>

然后从主页上对按钮执行以下调用让我们说 button1

$(document).ready({
     setInterval(function(){            
        $.ajax({
            url: 'abc.php',
            type: "POST",
            success: function(contents){
               $('#shuma').val(contents);
            }

        });
     }, 1000);

});

现在解释一下:
在文档准备好的主页面上,将调用javascript的setInterval方法,它有2个参数,代码和延迟时间,单位是毫秒。此代码将在每 1 秒后调用 abc.php 并检查数据库中的新值并将其返回并将其放入字段中。

希望这就是你要找的。

于 2013-04-04T11:54:56.173 回答