jQuery Mobile 'Form' 没有从 PhoneGap 中的 iPhone 软键盘“GO”按钮提交

Posted

技术标签:

【中文标题】jQuery Mobile \'Form\' 没有从 PhoneGap 中的 iPhone 软键盘“GO”按钮提交【英文标题】:jQuery Mobile 'Form' is not getting submitted from the iPhone soft keyboard "GO" button in PhoneGapjQuery Mobile 'Form' 没有从 PhoneGap 中的 iPhone 软键盘“GO”按钮提交 【发布时间】:2013-07-07 22:06:45 【问题描述】:

我正在为登录过程编写带有两个文本框的简单表单,并希望获得此表单

点击 i-Phone 键盘上的“Go”按钮提交,该按钮作为文本框打开

获得焦点。

当我用这两个文本框保留提交按钮时,继续按钮开始工作,否则

不会的。

我正在使用

jQuery mobile v1.2.0

PhoneGap v2.5

没有提交按钮的代码:

<form id="loginForm">

   <div class="ui-body">

      <div data-role="controlgroup" id="my-controlgroup">

          <input data-theme="b" type="text" name="text-username" id="text-username" placeholder="Username" value="" />

          <input data-theme="b" type="password" name="text-pwd" id="text-pwd"  placeholder="Password" value="" />

      </div>
   </div>

</form>

带有提交按钮的代码:

<form id="loginForm" data-ajax="false">

   <div class="ui-body">

     <div data-role="controlgroup" id="my-controlgroup">

       <input data-theme="b" type="text" name="text-username" id="text-username"  placeholder="Username" value="" />

       <input data-theme="b" type="password" name="text-pwd" id="text-pwd"  placeholder="Password" value="" />

       <button type="submit" data-theme="none" name="submit" value=""></button>

     </div>

    </div>

</form>

我不需要提交,但由于我必须使用 iPhone 软键盘提交表单,因此非常感谢任何帮助。 谢谢。

【问题讨论】:

【参考方案1】:

你需要一个keypress 活动我的朋友。手机上的“Go”按钮相当于物理键盘的 Enter 键。你必须检查那个keyCode。这是一个代码:

$("#my-controlgroup").on("keypress", "input[type=text]", function(e) 
    //check for enter key 
    if(e.which === 13) 
        //check for empty input
        if($("input:empty").length === 0) 
           alert("submitted!");
        
    
);

【讨论】:

【参考方案2】:

这里是Fiddle,如果有帮助的话!

<form id="loginForm" data-ajax="false">

   <div class="ui-body">

     <div data-role="controlgroup" id="my-controlgroup">

       <input data-theme="b" type="text" name="text-username" id="text-username"  placeholder="Username" value="" />

       <input data-theme="b" type="password" name="text-pwd" id="text-pwd"  placeholder="Password" value="" />

       <button type="submit" data-theme="none" name="submit" value="">GO</button>

     </div>

    </div>

</form>

【讨论】:

感谢您的回复,但您误解了问题!我不需要表单中的任何按钮,因为我在 phonegap 中使用 jquery mobile,所以当文本框获得焦点时,手机的软键盘会打开,并且它有一个“Go”按钮。点击时将提交表单。

以上是关于jQuery Mobile 'Form' 没有从 PhoneGap 中的 iPhone 软键盘“GO”按钮提交的主要内容,如果未能解决你的问题,请参考以下文章

Jquery Mobile表单

jquery中怎么样获取表单所有值

jquery mobile 表单提交 图片/文件 上传

Jquery Mobile Pop 未在活动中打开

jquery mobile按钮写法都有哪些

从 JQuery Mobile 到 PhoneGap / Cordova