首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >同时使用intl-tel-input和vuejs2

同时使用intl-tel-input和vuejs2
EN

Stack Overflow用户
提问于 2017-03-15 01:41:34
回答 1查看 3.2K关注 0票数 5

我正在尝试用vuejs2实现https://github.com/jackocnr/intl-tel-input

如果我在一个jQuerydocument.ready中添加,$('#phone').intlTelInput({ options...})

一切都按预期工作,但是当我试图获取输入字段的值和一些boolean有效属性时,我总是检查后面一步的值。

我的检查方法如下所示:

代码语言:javascript
复制
    validatePhoneNumber: function() {
        var validPhoneNo = $("#phone").intlTelInput("isValidNumber");
        var phoneNo = $("#phone").intlTelInput("getNumber");
        console.log(phoneNo + ' -> ' + validPhoneNo); //this line returns values one step behind
        bus.$emit('validate-phone', validPhoneNo)
    }

HTML:

代码语言:javascript
复制
<input class="form-control" @keydown="validatePhoneNumber" :class="{validInput: validPhone }" type="text" name="phone" value="" id="phone" :phone_number="phone_number">

我认为解决方案是为这个问题创建一个新的指令,我尝试了以下方法:

删除了我在document.ready上实例化intlTelInput的部分,改为:

代码语言:javascript
复制
Vue.directive('telinput', {
    bind: function(el) {
        $(el).intlTelInput({
            //options here...
    }
});

并在上面的HTML代码中添加了v-telinput

在这种情况下,似乎什么都不起作用。

我错过了什么?

EN

回答 1

Stack Overflow用户

发布于 2018-07-07 11:56:51

尝试使用@keyup而不是@keydown

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42792983

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档