11

我正在尝试使用从下拉框中选择的项目更改文本框的值。但它不起作用。

我试过这个 HTML:

<select name="ncontacts" id="contacts" onchange="ChooseContact(this);"> 
</select>

这个JS:

function ChooseContact(data)
{
   alert(data);
   document.getElementById("friendName").value = data;
}

但是文本框 val 没有更新。

4

2 回答 2

20

这是因为this( 的参数ChooseContact)指的是select元素本身,而不是它的值。您需要将元素的设置为value元素的:friendNamevalueselect

document.getElementById("friendName").value = data.value; //data is the element

这是一个工作示例

于 2012-04-24T15:56:37.647 回答
3

我建议你很简单的方法

$('#quantity').change(function(){
  var qty = $('#quantity').val();
  $("#totalprice").val(qty);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="pricesection">
        <input type="hidden" id="productPrice" value="340"/>
    Quantity: 
    <select id="quantity">
        <option value="1" selected>1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
        <option value="9">9</option>
        <option value="10">10</option>
    </select>
Total: $
<input type="text" id="totalprice" value="1"/>

    
</div>

于 2015-08-27T06:25:00.853 回答