php - 乘法输入和显示的功能

标签 php javascript mysql

我的表格是这样的:

  • 产品 下拉列表
  • 数量 文本字段
  • 单价显示
  • 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);
       ?> 

最佳答案

使用 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>

关于php - 乘法输入和显示的功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12066928/

相关文章:

mysql - 从不同目录创建数据库表

php - 在 PHP 中创建 SOAP 服务器的最佳解决方案是什么?

php - 如何在 Google App Engine 灵活环境上强制使用 SSL

php - 数据表显示第二个表但没有反应

javascript - Node 中无法识别 $or 运算符

javascript - jQuery 适用于 Chrome、Firefox、IE 但不适用于 iPhone

javascript - 箭头函数后面加一个()是什么意思?

mysql - 如何重命名 MySQL 中的主键约束?

php - 使用mysql列的值指定表名

sql - 需要一个查询将所有电子邮件从一个表移动到另一个使用公共(public)行值作为链接