如何根据下拉菜单更改文本框

时间:2014-05-28 22:07:20

标签: php html input textbox html.dropdownlistfor

我想知道如何根据下拉菜单更改文本框。例如......

<form action="index.php" method="POST">
<p>Product:</p>
<select id = "myPRODUCTS">
<option value = "Apple">Apple</option>
<option value = "Orange">Orange</option>
<option value = "Mango">Mango</option>
</select>
<p>Price:</p><input type="text" name="Price" readonly="readonly" />

所以我希望价格文本框改变,如果我选择Apple我希望它是0.45英镑或如果我选择橙色我希望它是0.50英镑等等。我该怎么做?

提前致谢, 马立克

2 个答案:

答案 0 :(得分:1)

你已经创建了一个在select的替换上运行的JS函数。 该函数将重新加载页面并将价格的值赋予变量,您将使用该变量为价格字段赋值。

当然,您可以让数据库中的所有名称和价格更容易选择值。

:)

一些更新:

带数据的数据库 查询那个名为

的数据库表
  

$ result_consulta_mes(在我的例子中)

在samefile.php中的一些Js将获取select的值并使用变量重新加载相同的文件。

<script>function unid()
{
    var mse=document.getElementById("select_mes");
    var mse2=mse.options[mse.selectedIndex].value;
    document.getElementById("mes_index").value = mse2;
    window.location.href = "samefile.php?rowmes=" + mse2;
}</script>

然后获取来自JS的变量值

<?php $varmes = "$_GET[rowmes]"; ?>

并选择了一段时间:

<input class="hidden" name="mes_index" type="text" id="mes_index" value= "<?php echo $varmes?>"><select data-size="20" id="select_mes" onchange="unid()" >
<?php
    $current_mes = $varmes;
    while($row_me = mysql_fetch_array($result_consulta_mes)){ 
    if ($row_me['mes_id'] == $current_mes){
    echo "<option selected value=" . $row_me['mes_id'] . ">" . $row_me['mes_mes'] . "</option>" ;}
    else {
    echo "<option value=" . $row_me['mes_id'] . ">" . $row_me['mes_mes'] . "</option>" ;}
    }
?></select>

答案 1 :(得分:1)

此代码显示了如何完成您所寻求的目标 正如其他人所提到的那样,这并不是最安全/最有效的方式,特别是如果你正在处理真钱,但是你需要做的就是将jquery添加到你的html文件{{1 }}

<script src="http://code.jquery.com/jquery-latest.min.js"></script>

http://jsfiddle.net/LtBh6/这会显示您的示例中的代码。