网上下了个jq插件,输入框绑定了click事件,但是我自己写的angular脚本也在同一个输入框上用了ng-keydown。。。我以为是angular的keydown处理函数会执行,结果没效果。。。但是我又不能把插件的click事件处理函数给去掉,因为要用到它的功能。。。不知道怎么处理这种情况
<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>
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. . .
<body ng-app="myApp" ng-controller="MyController">
angular.module('myApp',[])
</skrip>
Acara keyup yang saya baru tulis hari ini, keydown serupa</body>
</html>
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. . .