使用Javascript根据下拉菜单选择填充输入字段

时间:2012-08-18 17:15:55

标签: javascript mysql select input

在MySQL数据库中,我有一个项目表,其中包含项目的ID,名称和默认价格。我希望有一个表格,其中包含表格中所有项目的下拉菜单,用于将输入字段中的价格更改为所选项目的默认价格。我将如何使用Javascript进行此操作?提前谢谢。

5 个答案:

答案 0 :(得分:2)

HTML:

<select>
    <option>Select an item</option>
    <option data-price="20.00" value="1">Item 1</option>
    <option data-price="15.00" value="2">Item 2</option>
    <option data-price="24.00" value="3">Item 3</option>
</select>

<input type="text" id="price">

JavaScript(使用jQuery):

​$('select').on('change', function() {
    $("select option:selected").each(function () {
        $('#price').val('$' + $(this).attr('data-price'));
    });    
});​​​​​​​​

看一下这个jsFiddle的工作示例:http://jsfiddle.net/chnUn/

答案 1 :(得分:0)

使用jQuery,您可以执行以下操作:

$("#DropDownId").change(function ()
{
    var selectedItem = $(this).val();

    if (selectedItem != null && selectedItem != '')
    {
          $("#InputId").val(selectedItem);
    }      
});

答案 2 :(得分:0)

获取您需要在服务器上显示的所有内容(最好使用JSON)

并生成这样的select元素..

<select id="mySelect">
<option name="item1ID" defaultPrice="defaultPrice1" >ItemName1</option>
<option name="item2ID" defaultPrice="defaultPrice2" >ItemName2</option>
<option name="item3ID" defaultPrice="defaultPrice3" >ItemName3</option>
<option name="item4ID" defaultPrice="defaultPrice4" >ItemName4</option>
<option name="item5ID" defaultPrice="defaultPrice5" >ItemName5</option>
</select>

您可以获得默认价格,如

$("#mySelect").on('change',function(){
alert($(this).attr('defaultPrice');
});

答案 3 :(得分:0)

你的服务器端语言是什么?

我会做这样的事情:

<script language="javascript">
var items = new Array();

<?
$res = mysql_query("SELECT id, name, price FROM ITEM_TABLE");

while($item_object = mysql_fetch_object($res)) {
    ?>
        items[<? echo $item_object->id; ?>] = "<? echo $item_object->price; ?>";
        ('#item_drop_down').append('<option value=' + <? echo $item_object->id; ?> + '>' + <? echo $item_object->name; ?> + '</option>');
    <?
}

?>

('#item_drop_down').Change('#item_price_input').text(items[('#item_drop_down').value()]);

</script>

其中下拉列表为item_drop_down,您希望价格输入为item_price_input。

答案 4 :(得分:0)

创建选择下拉菜单,如下所示 其中期权价值=商品的价格

<select name="item_list" id="item_list" onchange="update_txt()">
<option value="">Select item</option>
<option value="10"> item1</option>
<option value="20">item2</option>
</select>
<input type="text" id="item_price" value="">

JS:

function update_txt(){
price = document.getElementById('item_list').selectedIndex.value;
document.getElementById('item_price').value = price;
}
相关问题