博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
knockoutJs在移动设备上有时无法更新控件值
阅读量:6680 次
发布时间:2019-06-25

本文共 490 字,大约阅读时间需要 1 分钟。

最近在用cordova(phonegap)写一个移动app,表单比较复杂,用了knockoutJs作为前端的MVVM框架进行数据绑定。

但是发现有时候(其实是每次)如果最后在input中编辑一个值,然后直接点保存按钮(用JQM的tap事件,之前直接用touchend也一样),会发现最后焦点所在的这个控件的值没有更新。

猜测是因为KO的value绑定默认是在控件触发change事件时更新view model中的值,但是不知道为什么点击保存按钮并没有触发最后这个input的change事件。

解决方法也很简单,在保存按钮的响应事件中,手动触发一下当前控件的change:

1: if (document.activeElement) {
2:   $(document.activeElement).trigger("change");
3: }

 

这个问题在PC的浏览器中并不存在,所以用Ripple模拟器的时候没有发现,但是在iOS和android上都有这个问题,不知道为啥……

转载于:https://www.cnblogs.com/erucy/p/4471184.html

你可能感兴趣的文章
嵌入式数据库Perst
查看>>
【SQL语法】系列11:IN 操作符
查看>>
二进制转成十六进制
查看>>
【民间图灵奖】读《图灵的秘密》写读后感获图灵水杯
查看>>
python 动态创建类
查看>>
推荐windows下两个科学用python集成套件
查看>>
objective-C Blocks 讲解
查看>>
EditPlus3.5+绿色+汉化+免安裝特别版
查看>>
java中的IO操作总结(四)
查看>>
【DLL】win7下注册dll
查看>>
为什么程序员的价值总是被严重的低估?
查看>>
design principle:模拟 android Button 控件点击事件
查看>>
SQL Server误区30日谈-Day21-数据损坏可以通过重启SQL Server来修复
查看>>
深入了解Hive Index具体实现
查看>>
一年又一年[2013开始了]
查看>>
C primer笔记
查看>>
Java多态之重写<一>
查看>>
android 问题汇总系列之八
查看>>
线程优先级
查看>>
【css】纯 css 制作带三角(border篇)
查看>>