在文本输入中的每个按键上调用AngularJS $watch
发布时间:2020-12-17 17:30:53 所属栏目:安全 来源:网络整理
导读:我有一个网页,我从服务器收到的动态json数据构建表单.我不久前用KnockoutJS开发了它.在构建表单之后,我还需要通过从服务器执行ajax请求来更新表单,每次更改表单中的值.这是 fiddle 你看,改变事件只发生在模糊上(不是在按键上).例如,如果文本字段的值为15,并
我有一个网页,我从服务器收到的动态json数据构建表单.我不久前用KnockoutJS开发了它.在构建表单之后,我还需要通过从服务器执行ajax请求来更新表单,每次更改表单中的值.这是
fiddle
你看,改变事件只发生在模糊上(不是在按键上).例如,如果文本字段的值为15,并且用户按退格键然后再次输入5,则表示2次按键但值尚未更改.到现在为止还挺好. 问题1 问题2 问题3 解决方法
修复问题1是引入模糊事件的指令,以下是我的指令的代码:
angular.module('app',[]).directive('ngModelOnblur',function () { return { restrict: 'A',require: 'ngModel',link: function (scope,elm,attr,ngModelCtrl) { if (attr.type === 'radio' || attr.type === 'checkbox') return; elm.unbind('input').unbind('keydown').unbind('change'); elm.bind('blur',function () { scope.$apply(function () { ngModelCtrl.$setViewValue(elm.val()); }); }); } }; }); 你可以在这里看到工作小提琴http://jsfiddle.net/akeelrehman/GNJtn/1/ 我无法找出问题2的解决方案,所以我已经停止使用无线电输入. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- shell – Emacs相当于VIM的`%`?
- angularjs – Angular Translate的useSanitizeValueStrateg
- WebService体系之——CXF+SPRING文件上传
- 替换文件中的文件路径
- shell脚本介绍,shell脚本结构和执行方式,date命令的用法,
- 在Scala中,是否存在将异常转换为Options的预先存在的库函数
- scala – 实现弱引用的Eventbus演员?
- 基于CXF的JAX-WS、JAX-RS(RESTful)的webService
- 我只是在VIM中找不到Project Plugin
- POJ 2763 Housewife Wind [树链剖分(边权)+树状数组]【数据