如何根据下拉列表选择填充文本输入

时间:2017-09-27 15:10:41

标签: javascript php mysql

我有一个下拉列表:

<select  class="form-control" name = "Terminal_ID" id = "Terminal_ID" onchange="updateValue();">
<option>Select</option>
<?php
    $query="SELECT *  FROM mytable";
    $result=mysqli_query($con,$query);
    while($rows=mysqli_fetch_array($result2))
    {
            $tid=$rows['Idcolumn'];
            $tn=$rows['Namecolumn'];
    ?>  
    <option value="<?=$tn;?>"><?=$tid;?></option> 
    <?php
    }
    ?>
</select>

和一个文本输入框

<input class="form-control" type="text" id="textboxid" name="tname" />

我在javascript中使用updateValue函数:

function updateValue()
    {
$('#textboxid').val($('#Terminal_ID').val());
    }

    $(document).ready(function () {
    updateValue();
});

它工作正常,因为它在我的文本输入框中显示$tn的值。问题是,该函数会更改下拉列表中选择的值。如果,我想使用下拉列表的选择在我的数据库中插入一些数据,它会发送$tn值,我需要$tid值。如果我将此<option value="<?=$tn;?>">更改为<option value="<?=$tid;?>">,则会更改文本输入框的值。我可以修改此代码,以便在文本输入框中将$tn作为值,并将$tid作为选择的值吗?

2 个答案:

答案 0 :(得分:0)

如果你设置这样的html option

HTML

<option value="<?=$tid;?>"><?=$tn;?></option> 

JS

function updateValue()
{
  $('#textboxid').val($('#Terminal_ID option:selected').text()); // this will set name 
}

$(document).ready(function () {
    updateValue();
});

答案 1 :(得分:0)

您可以更新以下解决问题的功能

(0.03, 0.09]    0.000018
(0.09, 0.16]    0.000019
(0.16, 0.29]    0.000016
(0.29, 0.5]     0.000018
(0.5, 0.77]     0.000018
(0.77, 1.0]     0.000022
(1.0, 1.05]     0.000021
(1.05, 1.5]     0.000022
(1.5, 2.0]      0.000025
(2.0, 3.0]      0.000025
(3.0, 4.0]      0.000024
(4.0, 6.42]     0.000026