http://jsfiddle.net/tossr6ss/
以上是我的小提琴
jQuery
$('#Company').change(function(){
var companyid = $(this).val();
var PrsIDNo = $('#PrsIDNo').val();
$('#PrsIDNo').val(companyid+PrsIDNo);
});
我想要的是我试图根据下拉列表获取唯一编号,但是现在我的输出就像
3215040003
,323315040003
一样,同时更改值并附加值。如何停止呢?预期输出
Changing value concat 15040003
3215040003
3315040003
3115040003
像上面的输出一样,我需要如何实现?
最佳答案
要停止不断添加新值,您需要存储页面加载时的原始值。为此,使用data
属性是理想的。然后,在下拉列表的change
事件中,您可以检索该值并将其附加到该值。试试这个:
$('#PrsIDNo').data('original-value', $('#PrsIDNo').val());
$('#Company').change(function () {
var companyid = $(this).val();
var PrsIDNo = $('#PrsIDNo').data('original-value');
$('#PrsIDNo').val(companyid + PrsIDNo);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<select class="choiceSelect my_prs_sele" id="Company" readonly="readonly" name="Company">
<option value="">Choose</option>
<option value="32">Com1</option>
<option value="33">Com2</option>
<option value="31" selected="selected">Com3</option>
</select>
<input class="my_prs_inp" id="PrsIDNo" name="PrsIDNo" type="text" value="15040003">
<div id="PresNo"></div>