如何通过单独的选项列表选择国家/地区,在电话字段中添加国家/地区电话号码

时间:2018-03-22 12:55:40

标签: javascript html

我想将国家/地区代码电话添加到来自的单独电话字段中。例如。 ich selcet"奥地利"在选项字段中并在选择代码后#34; + 41"应该出现在电话领域。

这可以正常使用值但是值不应该更改为数字或国家名称+代码..所以我的问题是读取id(或anoter属性)并将此值放在手机字段中...



<script language="javascript" type="text/javascript">
$('#country').change(function () {
    var countryCode = $(this).val();

    if (countryCode) {
        $('#phone').val(countryCode);
    }
});
</script>
&#13;
<select name="country" id="country">
    <option value="">Country...</option>
    <option value="Belgium" id="+42">Belgien</option>
<option value="Bulgaria" id="+47">Bulgarien</option>
<option value="Croatia" id="+12">Kroatien</option>
<option value="Czech Republic" id="+28">Tschechien</option>
</select>
<br /><br />
<!-- <label for="phone">Phone Number</label>
<input id="phone" name="phone" placeholder="user's number " required="" type="number"> <br><br>
 -->
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

我建议您添加新的span元素或任何包含您的国家/地区代码且不可编辑的标记。由于正在从下拉列表中选择国家/地区代码,因此您可以在span中将该代码设置为静态。另外,另一个原因是您的电话号码是number类型输入,因此可以轻松地将国家/地区代码与+分开,并允许用户在input中添加其电话号码。现在,当您提交表单或将此值保存到后端时,只需获取国家/地区代码值和电话号码即可将其传递给后端并相应保存。

$('#country').change(function () {
    var countryCode = $('#country option:selected').attr('id');
    if (countryCode) {
      $('#countryCode').text(countryCode);
    }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="country" id="country">
    <option value="">Country...</option>
    <option value="Belgium" id="+42">Belgien</option>
<option value="Bulgaria" id="+47">Bulgarien</option>
<option value="Croatia" id="+12">Kroatien</option>
<option value="Czech Republic" id="+28">Tschechien</option>
</select>
<br /><br />

<label for="phone">Phone Number</label>
<span id='countryCode'></span>
<input id="phone" name="phone" placeholder="user's number " required="" type="number"> <br><br>