【问题标题】:Disabling Android Keyboard's 'Go' Button for WebView Text Entry为 WebView 文本输入禁用 Android 键盘的“开始”按钮
【发布时间】:2013-08-20 19:11:29
【问题描述】:

我正在开发一个使用指向基于 jQueryMobile 的站点的 WebView 的 Android 应用程序。通常,禁用软键盘上的“开始”按钮就像在控件的 XML 标记中添加 android:imeOptions="actionDone" 一样简单。然而,在 WebViews 的情况下,这并不能解决问题。

如何禁用“开始”按钮自动提交表单,或者简单地将其替换为“完成”按钮,就像 android:imeOptions="actionDone" 将用于 EditText?

【问题讨论】:

  • 这个问题困扰着我。我还没有找到解决方法,Android 开发规范中甚至没有提到这种功能。我不知道这是否是 Android 开发团队的实际疏忽,或者只是他们忘记规范的东西。无论哪种方式,我认为想要控制 IME 的配置是标准的。
  • 更有趣的是,如果有一种简单的方法可以将“Go”按钮设置为“Next”或“Go”或“Search”等其他内容,具体取决于哪个输入字段用户当前处于开启状态。如果我有一个包含多个字段的字段集,我通常想要“下一个”标签,而对于最后一个输入字段,我想要“开始”。但我想这并不是那么简单。需要使用 javascript 和 CustomWebClient 传递给 WebView。

标签: java android jquery-mobile form-submit


【解决方案1】:

您可以通过放置表单的onsubmit 事件来停止提交表单。

【讨论】:

    【解决方案2】:

    这是使用 Vikas 提到的方法的更详细的答案。

    由于问题在于您的表单正在提交,您可以将 onSubmit 属性添加到运行 JavaScript 的表单元素以确定是否应提交您的表单。

    以下是您不想提交的表单:

    <form name="myForm" onSubmit="return doNothing()">
        <!-- Elements included in the form -->
    </form>
    

    并包含这个返回 false 的脚本,它会阻止您的表单提交。

    <script>
    function doNothing()
    {
        return false;
    }
    </script>
    

    现在,当您在文本输入字段中输入文本后按 Go 时,键盘将简单地折叠而不提交表单。

    这也可用于检查表单中的错误。请参阅下面的网页: http://www.htmlcodetutorial.com/forms/_FORM_onSubmit.html

    【讨论】:

    • 我想阻止输入键提交,但我希望我的提交按钮能够工作...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-20
    • 1970-01-01
    相关资源
    最近更新 更多