从行id指定的同一表行获取数据并执行计算

时间:2013-07-31 11:43:03

标签: javascript php html-table

我有一个html表填充了来自mysql数据库的数据。这是结构:

<table>    
<?php
foreach($prods as $key=>$p){
?>
   <tr class="row1" id="tr<?php echo $p['ProductID']?>">
   <td id="pid<?php echo $p['ProductID']?>"><?php echo $p['ProductID']?></td>
   <td id="pname<?php echo $p['ProductID']?>"><?php echo $p['ProductName'];?></td>
   <td id="pdesc<?php echo $p['ProductID']?>"><?php echo $p['ProductDesc'];?></td>
   <td id="pprice<?php echo $p['ProductID']?>"><?php echo $p['UnitPrice'];?></td>
   <td><input type="checkbox" id="chk<?php echo $p['ProductID']?>" checked></td>
   <td><input type="text" style="width:50px;" onkeyup="getall(this);" id="<?php echo    $p['ProductID']?>"></td>
   <td><input type="text" style="width:50px;" id="total<?php echo $p['ProductID']?>">    </td>
   <span id="ttl" name="ttl"> 0.00</span>
   </tr>
   <?php
   }
   ?>
   </table>

我没有填充表格的问题,但每次用户更改<span id="ttl">的值时,我都需要更新<input type="text" style="width:50px;" onkeyup="getall(this);" id="<?php echo $p['ProductID']?>"></td>值。我做了一个Javascript函数,但是我做不了我想做的事。

范围的值应该是<td id="pprice<?php echo $p['ProductID']?>"><?php echo $p['UnitPrice'];?></td>的乘积和用户在文本框中输入的数量。

一旦所有字段都填满,我很快就会将这些数据保存回数据库。

1 个答案:

答案 0 :(得分:0)

不确定是否正确使用。试试像:

<input type="text" style="width:50px;" onkeyup="getall('<?php echo $p['ProductID']?>');" id="<?php echo $p['ProductID']?>"></td>

在你的javascript函数中:

function getall(strId)
{
    var tmpObj = document.getElementById(strId);
    alert("reported id for testing: " + tmpObj.getAttribute("id"));
}

试试。