html5要求验证在浏览器上运行良好,但不是phonegap应用程序

时间:2015-10-14 18:20:00

标签: javascript android html5 cordova

我正在开发一个关于phonegap的应用程序(v 5.1.1)并使用phonegap app 在android上进行本地测试。我在html中创建了一个表单,为了验证目的,我使用了必需的属性。在浏览器(firefox,chrome)中它运行正常,而在移动设备上它不会验证任何内容。并提交。为什么会这样? Android上是否支持html5。

 <form id="LoginForm" action="">
   <input type="email" name="email" id="inputEmail3" placeholder="Email" required>
   <input type="password" name="pwd" id="inputPassword3" placeholder="Password" required>
   <button type="submit">Sign in</button>
   </form>

感谢。

2 个答案:

答案 0 :(得分:4)

您正在运行Android 4.2.2,并且直到较新版本的Android才支持“required”/表单验证。 caniuse.com有一个很好的matrix of support here

要涵盖所有Android版本,您可以使用“必需”但不依赖它,并在用户提交表单时对JavaScript中的缺失值进行防御性编码。

答案 1 :(得分:1)

iOS的一个有趣的情况:现在它在Safari Mobile 中受支持,当与“添加到主屏幕”功能一起使用时,一旦使用Cordova构建应用,验证是只是忽略了

required属性,同一设备进行了测试,几乎相同navigator.userAgent

浏览器navigator.userAgent

  

Mozilla / 5.0(iPhone; CPU iPhone OS 11_2,如Mac OS X)AppleWebKit / 604.4.7(KHTML,类似Gecko)版本/ 11.0 Mobile / 15C107 Safari / 604.1

Cordova app navigator.userAgent

  

Mozilla / 5.0(iPhone; CPU iPhone OS 11_2,如Mac OS X)AppleWebKit / 604.4.7(KHTML,如Gecko)Mobile / 15C107