我在使用jQuery Mobile / PHP开发的Web应用程序中遇到此问题
该应用程序旨在通过平板电脑浏览器在iPad等平板电脑上使用
在我的应用程序中我有一个用jQuery mobile构建的表单,其中包含一些文本和一个文本区域字段
在文本区域字段中,我还需要插入通常在台式机上使用Alt + ASCII代码编写的特殊字符(例如Alt + 157,Alt + 225,Alt + 0177)
在iPad上我找不到在虚拟平板电脑上点击Alt + ASCII代码的方法,所以我想在我的表单上添加一些按钮,每个按钮需要一个按钮,当点击时通过到文本区域的Alt + ASCII代码组合。 可能吗?如果是的话,怎么可能?
当提交表单时,字段的内容将存储到Mysql数据库......但这不是问题
答案 0 :(得分:0)
我有时会遇到类似的问题。我不认为你可以依靠模拟keypress
(这是我认为你正在尝试做的事情)。 keypress
如果不受信任并且指定哪些模拟键可能在某些浏览器上不起作用,则不会发生$("button").click( function() {
var e = jQuery.Event("keydown");
e.which = 50;
$("textarea").trigger(e);
});
。但是,这是如何实现的。
<textarea></textarea>
<button class="special" data-char="~">Insert tilde</button>
但是,这不适用于Chrome。所以我建议你尝试通过代码注入值。在这种情况下,我为你设置了一个小提琴。这是标记
$(".special").click(function () {
var char = $(this).data("char");
$("textarea").val(function () {
return this.value + char;
});
和JS
{{1}}
});