在Android键盘上单击go按钮提交表单

时间:2015-10-14 13:25:02

标签: android forms ionic

<form name="$root.deliveryDetails" action="#" ng-submit="ProceedForDelivery()">
    <h4>Login</h4>
        <div>
            <div ng-if="!askFor" class="paddingOnSides">
                <p>
                    <input type="number" name="usermobileNumber" ng-model="formData.userEnteredMobileNumber"  id="rounded" ng-minlength="10" ng-maxlength="10" ng-required="true" ng-pattern="/^\d{10}$/"  class="field" placeholder="Mobile Number:" ng-class="{LightText: contactDetails.mobileNumber.$pristine}"/>                                                            
                </p>
                <span class="error-message" ng-if="deliveryDetails.usermobileNumber.$dirty&& deliveryDetails.usermobileNumber.$invalid"> Please enter a 10 digit Mobile number</span>                  
                <div>
                    <span ng-disabled="deliveryDetails.$invalid" class="button button-positive button-block Centralize" ng-click="checkRegisteredUsers()"><span class="loginbuttonMargins">Verify</span><i class="ion-log-in"></i></span>
                </div>
            </div>
        </div>
        <input type="submit" style="position: absolute; left: -9999px; width: 1px; height: 1px;"/>
    </div><!--row-->
</form>

我正在使用Ionic并将ng-submitinput type submit添加到form,但是当按下键盘上的Go按钮时,此表单不会提交。< / p>

注意:它第一次重定向到默认状态,但在以后的时间里它可以正常工作。可能是什么问题?

点击自定义按钮(而不是键盘)时出现了类似的问题,只要我将其更改为标记中的标记或者可能将标记更改为

,它就会修复

但键盘点击会出现什么问题?

2 个答案:

答案 0 :(得分:0)

因为你的输入是'数字'输入,因为某些原因,android会将输入更改为'Next'而不是'Go',并且不会触发提交问题。

我遇到了同样的问题,并通过添加第二个隐藏输入并将onfocus="$('#thisForm').submit();"附加到其中来修复。您还可以使用style="position: absolute; left: -9999px; width: 1px; height: 1px;"隐藏此输入。

这不是一个理想的解决方案,但它可以在Android和iOS上实现。不知道为什么它在默认情况下会在这些键盘上搞砸了。

答案 1 :(得分:0)

显然,问题在于

action="#"

所以如果删除它,那么它应该可以工作。