-2

我正在使用 php 和 postgres 数据库。我希望在文本框中输入某个值时填充一个表值(在进行某些计算之后)..我尝试使用 onchange 事件,然后调用 ajax 函数但它不起作用..我正在使用两个 ajx 函数..那行得通吗?

阿贾克斯功能:

function getAmount(order_quant,item) 
{    
   var strURL = "calc_amt.php?order=" + order_quant + "&item=" + item;
   var req = getXMLHTTP(); 

   if (req) 
   { 
      req.onreadystatechange = function() 
      { 
         if (req.readyState == 4) 
         { 
            // only if "OK" 
            if (req.status == 200) 
            { 
               document.getElementById('amt').innerHTML = req.responseText;  
            } 
            else 
            { 
               alert("There was a problem while using XMLHTTP:\n" + req.statusText); 
            } 
         }   
      }  

      req.open("GET", strURL, true); 
      req.send(null); 
   }     
}

HTML:

<tr>
    <td>
        <?php echo $articles['item_name']; ?>
    </td>
    <td>
        <?php echo $tot."(".$articles['description'].")";?>
    </td>
    <td>
        <?php echo $articles['qty_in_stock'];?>
    </td>
    <td>
        <?php echo $articles['min_reorder_qty'];?>
    </td>
    <td>
        <input type="text" name="ordered_quant" id="order_quant" onChange="getAmount(this.id,$value)" required/>
    </td>
    <td>
        <div id="amt"></div>
    </td>
    <td>
        <?php echo $order_date; ?>
    </td>
</tr>
4

1 回答 1

0

您的问题出在第二个参数上。你在那里混合 PHP 和 Javascript。确保你(php)标记你的代码

onChange="getAmount(this.id,<?php echo $value; ?>)"

我假设 $value 是一个 php 变量...

于 2012-11-30T06:50:02.727 回答