我有一个国家/地区的选择和一个电话输入的感觉,我使用 in-tel-input 来允许国际前缀选择
现在我需要更改表单的行为
一旦用户选择了国家/地区,我就无法选择其他国际县代码
我找到了一种在 to-tel 输入中更改选择国家/地区代码的方法,但找不到删除其他国家/地区代码或禁用部分的方法
$('#country').on('change', function(){
var countrycode = $('#country option:selected').data('countryc');
telInput1.intlTelInput("onlyCountries", [countrycode]); // doesn't work
telInput1.intlTelInput("setCountry", countrycode);
});
链接到插件
插件只在初始化时接受选项,之后,它只接受自己的公共方法。
要即时更改选项,您需要销毁实例并重新初始化它 - 这将完全清除其当前所有选项和状态。(注意:在销毁实例并将其用作initialCountry
选项之前,您可以通过将其存储在变量中来保留用户选择的国家/地区)
要执行我所描述的操作,请使用公共方法destroy
(在 https://github.com/jackocnr/intl-tel-input#public-methods 阅读有关公共方法的更多信息)
对于此用例,尝试在 JavaScript 中使用以下代码:
telInput1.intlTelInput('destroy').intlTelInput({'onlyCountries': [countrycode]})
请记住,telInput1
必须是jQuery对象,而不是javascript对象。