相关疑难解决方法(0)

如何获得jquery .val()AFTER按键事件?

我有:

$(someTextInputField).keypress(function() {
  alert($(this).val());
});
Run Code Online (Sandbox Code Playgroud)

现在警报总是在按键前返回值(例如,字段为空,我输入'a',警报给我''.然后我输入'b',警报给我'a'......).但是我想要按键后的价值 - 我怎么能这样做?

背景:我想在文本字段包含至少一个字符时立即启用按钮.所以我在每个按键事件上运行此测试,但使用返回的val()结果总是落后一步.使用change()事件对我来说不是一个选项,因为在您离开文本框之前按钮被禁用.如果有更好的方法,我很高兴听到它!

javascript forms jquery events javascript-events

97
推荐指数
5
解决办法
8万
查看次数

android上的keyCode总是229

在我的三星Galaxy标签4(Android 4.4.2,Chrome:49.0.2623.105)上,我遇到了keyCode始终为229的情况.

我为两种情况设置了一个简单的测试

<div contenteditable="true"></div>
<input>
<span id="keycode"></span>
Run Code Online (Sandbox Code Playgroud)

脚本:

$('div, input').on('keydown', function (e) {
    $('#keycode').html(e.keyCode);
});
Run Code Online (Sandbox Code Playgroud)

DEMO

幸运的是,我可以找到关于此的帖子,但我找不到一个有效的解决方案.有人建议改为使用keyup或使用该textInput事件,但只会触发该事件blur.

现在,最重要的是,默认股票浏览器不会发生这种情况:(

任何帮助,将不胜感激!

更新:如果事实证明这是不可能的,我仍然可以在插入符号之前抓取字符:post

html javascript android keyevent

37
推荐指数
4
解决办法
3万
查看次数

iOS 9 - 键盘事件未触发

是否有其他人keyup在iOS 9 中遇到问题没有解雇?

只是一个简单的测试床为我复制了这个问题.

<input id="txtInput" />
Run Code Online (Sandbox Code Playgroud)

香草JS:

document.getElementById('txtInput').onkeyup = function () {
    console.log('keyup triggered');
}
Run Code Online (Sandbox Code Playgroud)

jQuery的:

$('#txtInput').on('keyup', function () {
    console.log('keyup triggered');
});
Run Code Online (Sandbox Code Playgroud)

既不火......

javascript jquery onkeyup keyup ios9

9
推荐指数
1
解决办法
8716
查看次数

JQuery keyup()keydown()和keypress()不支持iPad和蓝牙键盘

我遇到麻烦keyup(),keydown()keypress()事件在iPad上运行.当我连接无线蓝牙键盘并尝试使用键盘输入时会出现问题 - 事件不会触发.我尝试在iPad上使用Safari和Chrome(iOS 6.1).这个相同的HTML在桌面上的Firefox,Safari,Chrome等中运行良好.有没有办法更改此代码,使其在平板电脑上工作?我检查了document.activeElement,它似乎是文件正文,这是正确的.

<html>
    <head>
        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
        <script>
            $(document).ready(function() {
                $(document).keyup(function(event) {
                    document.getElementById("output").innerHTML = document.getElementById("output").innerHTML + ("keyup " + event.which) + "<br>";
                });
                $(document).keydown(function(event) {
                    document.getElementById("output").innerHTML = document.getElementById("output").innerHTML + ("keydown " + event.which) + "<br>";
                });
                $(document).keypress(function(event) {
                    document.getElementById("output").innerHTML = document.getElementById("output").innerHTML + ("keypress " + event.which) + "<br>";
                });
            });
        </script>
    </head>
    <body>
        <div id="output"></div>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

javascript jquery bluetooth ipad ios

2
推荐指数
1
解决办法
1万
查看次数