使用jquery或ajax更新表后更新输入表单

时间:2013-04-04 11:24:22

标签: javascript jquery ajax

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

我可以做到这一点,但我需要的是在不刷新页面的情况下得到总和,所以我随时输入: 在Value列中,Sum应该变为:

Sum + 200

我需要一些帮助来做什么,我搜索了数据网格,但真诚地我不知道我该怎么办。 感谢

输入的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" />

3 个答案:

答案 0 :(得分:1)

您发布的代码并未真正显示完整格式(输入内容如何)......但如果您执行以下操作:

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

并且您想要转换为总和的每个文本输入都有一类“值”,它应该有效。 http://jsfiddle.net/NNbtk/

答案 1 :(得分:0)

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

$(document).ready(function(){
   $('#shuma').keyup(function(){
   var val=$('#shuma').val();
   sum=sum+val;
    });
});

答案 2 :(得分: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;
?>

然后从主页面上按下一个按钮,可以说按钮1

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

        });
     }, 1000);

});

现在解释:
在文档准备好的主页面中,将调用javascript的setInterval方法,该方法以ms为单位获取2个参数,代码和延迟时间。此代码将在每1秒后调用abc.php并检查db以获取新值并将其返回并将其放入字段中。

希望这就是你要找的东西。