首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >AngularJS指令数字格式掩蔽

AngularJS指令数字格式掩蔽
EN

Stack Overflow用户
提问于 2013-11-08 14:28:29
回答 3查看 25.3K关注 0票数 2

我创建的指令使用函数setFormatting来掩盖输入字段中的文本值。

代码语言:javascript
运行
复制
scope.$watch(element, function() {
    modelCtrl.$setViewValue(setFormatting(element.val(), attrs.symbol));
    modelCtrl.$render();
});

element.bind('blur', function() {
    modelCtrl.$setViewValue(setFormatting(element.val(), attrs.symbol));
    modelCtrl.$render();
});

$watch第一次加载/应用内容时应用掩码,element.bind在其他时间应用掩码。范围.$watch是将符号(如果有)存储为ng模型变量的一部分。element.bind不是。我认为$setViewValue()和$render()没有更新ng模型变量。变量在哪里更新?

见附件小提琴:http://jsfiddle.net/PJ3M4/

谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-11-09 16:43:19

我能够通过向我的作用域添加一个modelCtrl.$parsers.push() {. }来以我想要的方式存储值。$watch(){.}。

代码语言:javascript
运行
复制
scope.$watch(element, function() {
    modelCtrl.$parsers.push(function(inputValue) {
        showAlert("Watch", 1);

        if (!prev) {
            prev = false;
            var returnVal = checkVal(inputValue, modelCtrl, decimals, true, minVal, maxVal);

            if (String(returnVal) === ".") {
                setAndRender(modelCtrl, "");
                return "";
            }
            else {
                return returnVal;
            }
        }
        return String(inputValue).replace(/[^0-9 . -]/g, '');
    });

    prev = true;
    setAndRender(modelCtrl, setFormatting(element.val(), decimals, attrs.prefix, attrs.symbol));
});
票数 0
EN

Stack Overflow用户

发布于 2013-11-08 14:40:56

$watch在“摘要”循环中执行。element.bind回调是从外部角调用的,因此必须添加对scope.$apply()的显式调用。

代码语言:javascript
运行
复制
element.bind('blur', function() {
    modelCtrl.$setViewValue(setFormatting(element.val(), attrs.symbol));
    modelCtrl.$render();
    scope.$apply();
});

更新小提琴

有关AngularJS事件循环的信息,请参阅文档。

票数 1
EN

Stack Overflow用户

发布于 2016-01-21 13:53:28

您也可以简单地使用

代码语言:javascript
运行
复制
ui-mask="{{'999,999,999°'}}"
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19861408

复制
相关文章

相似问题

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