32 lines
1.1 KiB
Plaintext
32 lines
1.1 KiB
Plaintext
// get the country data from the plugin
|
|
var countryData = window.intlTelInputGlobals.getCountryData(),
|
|
input = document.querySelector("#phone"),
|
|
addressDropdown = document.querySelector("#address-country");
|
|
|
|
// init plugin
|
|
var iti = window.intlTelInput(input, {
|
|
utilsScript: "../../build/js/utils.js?<%= time %>" // just for formatting/placeholders etc
|
|
});
|
|
|
|
// populate the country dropdown
|
|
for (var i = 0; i < countryData.length; i++) {
|
|
var country = countryData[i];
|
|
var optionNode = document.createElement("option");
|
|
optionNode.value = country.iso2;
|
|
var textNode = document.createTextNode(country.name);
|
|
optionNode.appendChild(textNode);
|
|
addressDropdown.appendChild(optionNode);
|
|
}
|
|
// set it's initial value
|
|
addressDropdown.value = iti.getSelectedCountryData().iso2;
|
|
|
|
// listen to the telephone input for changes
|
|
input.addEventListener('countrychange', function(e) {
|
|
addressDropdown.value = iti.getSelectedCountryData().iso2;
|
|
});
|
|
|
|
// listen to the address dropdown for changes
|
|
addressDropdown.addEventListener('change', function() {
|
|
iti.setCountry(this.value);
|
|
});
|