使用javascript从php向文本输入字段返回一个值


Return a value to a text input field from php with javascript

我在php中从一个包含工作代码列表的表中获得了一个下拉字段。选择工作代码后,我需要根据工作代码从另一个表中查找费率,并将其输入到输入字段中。因此,在工作代码下拉列表中,我得到了执行javascript的onchange事件。

在Javascript中,我执行rate.php,但如何将rate.php中的值返回到字段?

工作代码下拉列表:

//workcode drop down
        $get5 = mysqli_query($con,"SELECT * FROM va_workcodes order by BriefDesc");
        $option_wc = "<select name='wc' id='wc' onchange='getrate()'>";
        while($row5 = mysqli_fetch_array($get5)) {
        $option_wc .= "<option value = '";
        $option_wc .= $row5['WCNo'];
        $option_wc .= "'>";
        $option_wc .= $row5['BriefDesc'];
        $option_wc .= "</option>";
        }
        echo $option_wc;
        echo "</select>";

速率字段

echo "<input name='rate' id='rate' type='text' />";

javascript/jquery

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript">
function getrate(){
    $.get("rate.php");
}
</script>

rate.php

<?php
$getrate1 = mysqli_query($con,"SELECT * FROM rates where .....");
while($row1 = mysqli_fetch_array($getrate1)) {
  $StdRate = $row1['StdRate'];
}
?>

所以基本上我需要将$StdRate从rate.php返回到inputfield(rate)

对代码进行以下更改:

rate.php

<?php
$getrate1 = mysqli_query($con,"SELECT * FROM rates where .....");
while($row1 = mysqli_fetch_array($getrate1)) {
   $StdRate = $row1['StdRate'];
}
echo $StdRate;   // Print the rate in the end
?>

javascript/jquery

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript">
function getrate(){
    $.get("rate.php", function(data) {   // Add a callback to success and retrieve printed value as parameter
        $("#rate").val(data);
    });
}
</script>

问题是,您正在进行AJAX调用,但没有返回它的结果,这是我通过打印完成的,而且在返回后,您必须通过创建回调函数来使用我在JS中完成的结果。