我正在为需要屏幕键盘的触摸屏计算机构建一个 Web 应用程序,并尝试使用这个出色的(或者至少是我能找到的唯一一个不可怕的)键盘。 https://github.com/Mottie/Keyboard/
问题是,正如您可能已经猜到的那样,使用屏幕键盘时模型没有得到更新。这是我的代码,它可以工作,但有点难看:
部分 HTML:
<input type="text" class="keyboard" ng-model="newUser.name">
<input type="text" class="keyboard" ng-model="newUser.email>
从部分页面控制器初始化键盘:
$('.keyboard')
.keyboard({
stickyShift: false,
usePreview: false,
autoAccept: true,
change: function(e, kb, el) {
$scope.newUser.name = el.value;
}
});
因此,在 jQuery 插件触发的更改上,我可以运行一些东西。显然,这只适用于更新单个字段/模型,名称一(而电子邮件一则根本不起作用,并且会覆盖名称字段),当与键盘一起使用时,我需要更新任意数量的字段,并且正确的一个。如何以不那么糟糕、不硬编码(如果可能且不太复杂)的方式解决这个问题?