如何将下拉值作为文本框名称?

时间:2017-11-14 04:41:09

标签: javascript jquery

https://jsfiddle.net/t12x9boj/

<select id="drop" name="1" class="form-control">
  <option value="policy_no">Policy No</option>
  <option value="claim_no">Claim No</option>
  <option value="acc_no">Account No</option>
  <option value="client_no">Client No</option>
</select>

<input type="text" name="selectValue"> 

例如,如果用户从下拉菜单中选择了政策号,则代码文本框代码语句将变为<input type="text" name="policy_no">

或者如果用户选择声明否,则<input type="text" name="claim_no">

来自@NewToJS

<select id="drop" name="1" class="form-control" onchange="setname(this.value)">
<option value="policy_no">Policy No</option>
<option value="claim_no">Claim No</option>
<option value="acc_no">Account No</option>
<option value="client_no">Client No</option>
</select>
<input id="dropvalue" type="text" name="selectValue" onclick="this.value='';alert(this.name);"> 

function setname(e){
var input=document.getElementById('dropvalue');
input.name=e;
input.value="Click Me!";
}
@Milan Chheda

解决方案
$("#drop").on('change', function() {
  $("#inputId").prop('name', $(this).val());
  //2nd method
  //$("#inputId").attr('name', $(this).val()); 
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="drop" name="1" class="form-control">
  <option value="policy_no">Policy No</option>
  <option value="claim_no">Claim No</option>
  <option value="acc_no">Account No</option>
  <option value="client_no">Client No</option>
</select>

<input type="text" name="selectValue" id='inputId'>

1 个答案:

答案 0 :(得分:2)

使用Jquery prop来实现这一目标。您需要在更改下拉选项时检查并检查name的{​​{1}}属性:

&#13;
&#13;
input
&#13;
$("#drop").on('change', function() {
  $("#inputId").prop('name', $(this).val());
  //2nd method
  //$("#inputId").attr('name', $(this).val()); 
});
&#13;
&#13;
&#13;