Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript iPhone“;围棋;键盘按钮导致在发回前抛出错误_Javascript_Jquery_Ios_Asp.net_Iphone - Fatal编程技术网

Javascript iPhone“;围棋;键盘按钮导致在发回前抛出错误

Javascript iPhone“;围棋;键盘按钮导致在发回前抛出错误,javascript,jquery,ios,asp.net,iphone,Javascript,Jquery,Ios,Asp.net,Iphone,我有一个带有表单和多个提交按钮的网页,每个按钮都有不同的功能(清除表单、执行计算、添加另一个输入行等) 只有在iPhone上(在5和5s上都测试过,Opera和Chrome都测试过,所以不针对浏览器),当用户在文本框中输入文本并按下内置于本机iPhone键盘中的“Go”按钮时,会出现一个通用弹出窗口,上面只显示: http://myurl error 我已经将calculation按钮设置为表单提交的默认操作,当按下iPhone的“Go”按钮(相当于按键盘上的Enter键)时,会触发以下jQ

我有一个带有表单和多个提交按钮的网页,每个按钮都有不同的功能(清除表单、执行计算、添加另一个输入行等)

只有在iPhone上(在5和5s上都测试过,Opera和Chrome都测试过,所以不针对浏览器),当用户在文本框中输入文本并按下内置于本机iPhone键盘中的“Go”按钮时,会出现一个通用弹出窗口,上面只显示:

http://myurl

error
我已经将calculation按钮设置为表单提交的默认操作,当按下iPhone的“Go”按钮(相当于按键盘上的Enter键)时,会触发以下jQuery:

当您在提示符上单击“确定”时,将发生回发,并触发默认功能。没有什么看起来不对劲,其他一切都如期发生。我在按下按钮后使用了jQuery,所有的东西似乎都在正常触发,但这个错误不断出现

您对这里可能发生的情况有何想法,甚至对如何解决此错误有何建议


在所有其他浏览器和设备中,这不会发生。该错误仅出现在iPhone上

如果有人有同样的问题,我可以通过从jquery 1.9.1升级到2.1.0来解决这个问题,只针对网站的移动版本(2.1.0不支持IE8,所以我没有在全球范围内这么做)


该错误最终来自库本身,似乎是在更高版本中修复的错误。

如果我单击按钮注释掉jQuery行,则不会触发错误。我仍然不知道为什么,但我至少已经缩小了范围。
var buttonKeys = { "EnterKey": 13 };
$(function () {
    $("input[name*=ItemValue]").keypress(function (e) {
        if (e.which == buttonKeys.EnterKey) {
            var formValid = $('form').validate().form();
            if (!formValid) { this.focus(); return false; }
            var defaultButtonId = $('form').attr("defaultbutton");
            $("#" + defaultButtonId).click();
            return false;
        }
    });
});