我选择了国家/地区代码
<select name="countryCode" id="">
<option data-countryCode="GB" value="44" Selected>UK (+44)</option>
<option data-countryCode="US" value="1">USA (+1)</option>
<optgroup label="Other countries">
<option data-countryCode="DZ" value="213">Algeria (+213)</option>
<option data-countryCode="AD" value="376">Andorra (+376)</option>
</optgroup>
</select>
在下一个字段中我输入了您的手机
<input type="text" placeholder="Enter your mobile phone" data="required" id="phone" data-content='Your mobile phone'>
我需要的是当用户选择国家代码来附加这样的电话输入时 如果用户选择阿尔及利亚(+213),当他点击输入手机时,要追加他的价值,如 这+213,然后允许他输入更多号码。
答案 0 :(得分:2)
使用以下代码:
$(function() {
$('#phone').on('focusin', function() {
var cc = $('select[name=countryCode]').val().replace(/^.*\(([\)]+)\).*$/,'$1');
$(this).val( cc ).data('cc', cc);
})
.on('focusout',function() {
if( this.value == $(this).data('cc') )
$(this).val('');
}
});
});
或强>
$(function() {
$('select[name=countryCode]').on('change', function() {
var cc = this.value.replace(/^.*\(([\)]+)\).*$/,'$1');
$('#phone').val( cc )..data('cc', cc);
});
$('#phone').on('focusout',function() {
if( this.value == $(this).data('cc') )
$(this).val('');
}
});
});
答案 1 :(得分:0)
如上所述,代码会在电话号码中设置值,但您需要将焦点设置为以下更新
$('select').change(function(){
$('#phone').val( $(this).val() );
$('#phone').focus();
});
这将有助于您在改变时关注该领域