当通过JavaScript来修改ng-model的值,ng-change不能触发

 <input type="number" ng-model="testNumber" ng-change="changeNumber()" /><button ng-click="addNumber()">+1</button>
$scope.testNumber = 100$scope.addNumber = function() {$scope.testNumber++
}$scope.changeNumber = function() {console.log('changeNumber' + $scope.testNumber)
}

【问题】:点击button,testNumber值改变但不触发changeNumber方法,只有在input中输入才会触发

【解决方法】:使用onchange替换ng-change,通过元素id强行调用onchange()方法

<input type="number" id='number1' ng-model="testNumber" onchange="changeNumber()">
<button ng-click="addNumber()">+1</button>
$scope.testNumber = 100$scope.addNumber = function() {$scope.testNumber++;document.getElementById('number1').onchange()
}$scope.changeNumber = function() {console.log('changeNumber' + $scope.testNumber)
}

====================================================================

wui-date日期选择器修改时间不能触发ng-change()

//首先修改wui-date.js中的outputDate方法,通过元素id强行调用onchange()方法
function outputDate() {scope.ngModel = dateFormat(GMTToStrDate(GMTDate));if (element[0].id.includes('account')) {element[0].onchange()}
}

【问题】:通过上述方法,onchange()调用的函数报错

<wui-date required format="yyyy-mm-dd" placeholder="请选择开始日期" id="account1"btns="{'now':'今天'}" ng-model="current_school_info.protocol_starttime" onchange="setProtocolTime()"></wui-date>

【解决方法】:强制指定作用域中的函数

 <wui-date required format="yyyy-mm-dd" placeholder="请选择开始日期" id="account1" btns="{'now':'今天'}" ng-model="current_school_info.protocol_starttime" onchange="angular.element(this).scope().setProtocolTime()"></wui-date>

2021-06-10 工作笔记 ng-change不能触发的解决方法+wui-date日期选择器使用onchange调用函数报错相关推荐

  1. 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器(及Windows 10无法找到SQL server配置管理器的解决方法)

    这里写目录标题 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器 Windows 10无法找到SQL server配置管理器的解决方法 后续 在与 SQ ...

  2. J2EE开发工作中遇到的异常问题及解决方法总结

    J2EE开发工作中遇到的异常问题及解决方法总结 参考文章: (1)J2EE开发工作中遇到的异常问题及解决方法总结 (2)https://www.cnblogs.com/shinubi/p/450715 ...

  3. w ndows10玩游戏蓝屏,Windows 10 电脑玩穿越火线蓝屏原因及解决方法

    Windows 10 蓝屏是非常常见的,可是面对不同原因出现的蓝屏您又知道如何去处理吗?今天我们就来通过解决穿越火线蓝屏顺便一起看看都是因为什么原因导致的 Windows 10 系统蓝屏吧. 1.显卡 ...

  4. Ubuntu 10.10 无线网络已经禁用” “wiress is disabled” 解决方法

    今天高高兴兴用真机器装好了Ubuntu 10.10 想WIFI 结果显示 无线网络已经禁用 wiress is disabled ............... 我晕,LiveCD 启动没有任何问题. ...

  5. Windows 10 1703-1909 版本 Win+X 丢失原控制面板解决方法

    加一个百度云下载地址好了:WinX Restore.zip [790B] 2019年11月18日 更新,覆盖方式支持最新 1909 系统. 2017年11月19日 更新,新 1709/1803 系统覆 ...

  6. 办公室局域网打印机配置笔记及0x0000011b连接错误成功解决方法

    WIn10共享打印机方法 右键单击"开始"图标--"控制面板"--,以类别方式在"家庭组和网线网络". 选择"更改高级共享设置&q ...

  7. 华硕X550C 安装Ubuntu 14.10 无线网络显示硬件被禁用的解决方法

    小学期涉及到LINUX  下 QT 用户界面与MySQL的应用,原来电脑是WIN8 WIN7双系统,为了大作业 只能在安装一个Ubuntu.用的是Ubuntu14.10版本的,通过EasyBCD引导安 ...

  8. 支持M1芯片的Photoshop 2021(ps2021)mac版闪退、卡启动界面解决方法

    macw站的2021版Photoshop版M1可以使用了,具体怎么安装呢,本文将介绍m1 Mac安装ps2021的方法.如果安装过错出现问题,本文将介绍M1 Mac安装 PS 2021 闪退.卡启动界 ...

  9. 【Linux学习笔记】3.Linux 忘记密码解决方法及远程登录

    前言 本章介绍Linux的忘记密码解决方法及远程登录. Linux 忘记密码解决方法 很多朋友经常会忘记Linux系统的root密码,linux系统忘记root密码的情况该怎么办呢?重新安装系统吗?当 ...

最新文章

  1. 《数据科学家养成手册》傅里叶变换与反傅里叶变换笔记
  2. Cisco对中国CCIE认证下重手了
  3. jsp 选择时分秒控件_【最全】9月计算机考试报名通知(6.19更新,仅差4省市)附:分析如何选择科目...
  4. SAP Spartacus cms页面请求的语言参数
  5. 深入一致性哈希(Consistent Hashing)算法原理
  6. sqlserver:(1):sqlserver安装超详细
  7. android 刷rom,刷ROM是什么?刷ROM是什么意思?
  8. sqlite3的backup和restore函数的使用
  9. 开发优秀产品的六大秘诀
  10. Python高级——闭包与装饰器
  11. 串匹配模式中的BF算法和KMP算法
  12. linux下apache安装ssl,linux下apache安装ssl步骤
  13. LineageOS的代码下载、编译及真机运行
  14. android外接键盘,小米手机如何外接键盘
  15. 【DVB】【Cert】DVD相关认证简介
  16. 人工智能入门:第一章 人工智能课程介绍及环境配置
  17. STM32F103C8T6封装引脚图
  18. Pikka 2.1.0 macOS菜单栏屏幕取色器
  19. 学IT,看教程,看视频,你必须知道的学习网站
  20. Python Diango学习之路

热门文章

  1. 【MAYA】如何用MAYA将mixamo中导出的动画制作成RootMotion根骨骼动画
  2. ucenter头像剪切
  3. 【Android】Android开源项目(一)音乐播放器源码汇总
  4. MySQL非交互式查询
  5. 4.1 画图抓图工具
  6. 大话设计模式 简单工厂模式
  7. Android搜索关键字飞入飞出效果
  8. 个人博客系统前台归档
  9. 三菱QD75定位模块的应用
  10. optimus切换 linux,在Ubuntu上安装和配置Nvidia Optimus驱动