【问题标题】:Keypress event not detetcting Ctrl+V event in CHrome borwser按键事件未在 CHrome 浏览器中检测到 Ctrl+V 事件
【发布时间】:2015-12-07 18:20:15
【问题描述】:

AngularJS

element.bind("keypress", function() {
    if(attrs.id == 'headEdit' && scope.selectedTab.facebook){
        return element.text().length <= 50;
    }
});

这里我可以将最大文本长度设置为 50。但是当将一些文本(cntrl+V)粘贴到此框中时,文本超出了最大长度。这个问题只出现在 Chrome 浏览器中。

【问题讨论】:

标签: angularjs angularjs-directive angularjs-scope


【解决方案1】:

类似的东西

element.bind("keypress", function() {
if(attrs.id == 'headEdit' && scope.selectedTab.facebook){
   // return element.text().length <= 50; 
    return    element.val(elem.val().substr(0, 50));
}
});

【讨论】:

    【解决方案2】:

    使用ng-change可能会更好?

    <input ng-model="someField" ng-change="validate()">
    

    保持 Angular 的方式

    甚至更好地使用ng-paste

    <input ng-paste="validate">
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-17
      • 2014-11-06
      • 1970-01-01
      相关资源
      最近更新 更多