1

我有这样的表格:

  • Product落下
  • Quantity文本域
  • UnitPrice展示
  • TotalPrice展示

我创建了一个函数来在选择下拉列表时通过查询数据库来显示单价。现在我希望能够在输入数量时通过将数量和单价相乘来显示 TotalPrice。了解以下是乘法的方法,但我如何在查询中应用它。也包括了我的代码。

<script>
function showUP(str)
{
if (str=="")
{
document.getElementById("UP").innerHTML="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("UP").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","getunitprice.php?q="+str,true);
xmlhttp.send();
}
function multiply(Quantity)
{
var totalPrice= parseFloat(document.getElementById("UP"))*Quantity;
document.getElementById("TP").innerHTML= totalPrice;
}
</script>


    <table><tr>
    <th width-"18%>Quantity:</th>
    <td width="60%">
        <input type-"text" name="Quantity" value="" onkeyup= "multiply (this.value)" size="60" />
    </td>
    </tr></table>
<p></p><div id="UP"><b>UnitPrice: 0.00 </b></div><p>
<p></p><div id="TP"><b>TotalPrice: 0.00 </b></div><p>

获取单位价格.php

<?php
 $q=$_GET["q"];

 $con = mysql_connect('localhost', '', '');
 if (!$con)
 {
 die('Could not connect: ' . mysql_error());
 }

 mysql_select_db("db", $con);

 $sql="SELECT CostPrice FROM Product WHERE ProductCode = '".$q."'";

 $result2 = mysql_query($sql) or die($sql."<br/><br/>".mysql_error());

 while($row2 = mysql_fetch_array($result2)) {

 echo "<b>UnitPrice: ".$row2['CostPrice']."";


 }

    mysql_close($con);
       ?> 
4

1 回答 1

2

使用onBlur而不是onchange事件。您还可以onkeyup在数量文本框上使用事件。

<script>
function multiply(qty)
{
    var totalPrice= parseFloat(document.getElementById("UP").innerHTML)*qty;
    document.getElementById("TP").innerHTML= totalPrice;
}
</script>

        <tr>
        <th width-"18%>Quantity:</th>
        <td width="60%">
        <input type-"text" name="Quantity" value="" onkeyup= "multiply (this.value)" size="60" />

        </td>
        </tr>

<p></p><div><b>UnitPrice: <span id="UP">0.00</span> </b></div><p>
<p></p><div id="TP"><b>TotalPrice: 0.00 </b></div><p>
于 2012-08-22T05:45:05.790 回答