angular.js - 同时有angular和jquery插件处理keydown事件
漂亮男人
漂亮男人 2017-05-15 17:08:07
0
2
623

网上下了个jq插件,输入框绑定了click事件,但是我自己写的angular脚本也在同一个输入框上用了ng-keydown。。。我以为是angular的keydown处理函数会执行,结果没效果。。。但是我又不能把插件的click事件处理函数给去掉,因为要用到它的功能。。。不知道怎么处理这种情况

漂亮男人
漂亮男人

membalas semua(2)
给我你的怀抱

<body ng-app="myApp" ng-controller="MyController">

<!--自定义指令: 限制输入框中只能是1到100之间的数值-->
<input type="text" score>
<script type='text/javascript' src="angular.js"></script>
<script type="text/javascript">

angular.module('myApp',[])

            .directive('score', function () {
                return {
                    link : function (scope, elements, attrs, controller) {  //在显示之前执行, 只执行一次
                        //得到input
                        //console.log('link()',elements);
                        var input = elements[0]
                        //给input绑定keyup的监听回调函数
                        input.onkeyup = function () {
                            //读取input的value, 判断是否合法
                            var score = input.value.trim()
                            //如果合法, background为white
                            if(score==='' || (score*1>=1&&score*1<=100)) {
                                input.style.background = 'white'
                            } else {
                                //否则为red
                                input.style.background = 'red'
                            }
                        }
                    }
                }
            })
            .controller('MyController', function($scope){

            });
            

</skrip>
</body>
</html>

Acara keyup yang saya baru tulis hari ini, keydown serupa

仅有的幸福

Anda tidak boleh menulisnya seperti ini,
Pilihan pertama memerlukan: '?ngModel',
Kemudian dapatkan nilai kotak teks ngModel.$modelValue dan bukannya input.value,
Tidak perlu elemen [ 0], elemen mewakili
jquery Pemikiran terlalu serius. . .

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan