为了账号安全,请及时绑定邮箱和手机立即绑定

angular应用内的input在设置了maxlength的情况下输满后选中会无法修改

angular应用内的input在设置了maxlength的情况下输满后选中会无法修改

紫衣仙女 2018-08-18 10:09:43
<div ng-app>     <input type="text" maxlength="7" ng-model="model" /> </div>问题是这样的,angular应用中的一个input,最大输入长度为7,输满7位后,选中其中某几位或全部选中,再进行输入会没有任何反应,输不进去。。请问这个怎么解决呢?
查看完整描述

1 回答

?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

'use strict';

export default function () {

  return {

    restrict: 'A',

    link: function ($scope, $element, $attributes) {


      var limit = $attributes.maxlength;

      $element.bind('keyup', function (event) {

        var element = $($element).closest('.form-group');


        element.toggleClass('has-warning', limit - $element.val().length <= 10);

        element.toggleClass('has-error', $element.val().length >= limit);

      });


      $element.bind('keypress', function (event) {

        // Once the limit has been met or exceeded, prevent all keypresses from working

        if ($element.val().length >= limit) {

          // Except backspace

          if (event.keyCode !== 8) {

            event.preventDefault();

          }

        }

      });

    }

  };

}


查看完整回答
反对 回复 2018-09-14
  • 1 回答
  • 0 关注
  • 1191 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信