使用Angularjs在IE8上进行输入验证

3
我有一个表单(使用div创建),当我使用下拉菜单选择选项时,它会被显示出来。我正在使用ng-options进行下拉选择。我的问题是我需要支持IE8。我知道IE8不支持HTML5,并且我不能使用“required”标签。因此,我尝试使用“ng-required”选项进行表单验证,但似乎无效。我已经查看了jquery验证器,但我有很多表单,每个表单都有不同的标准。例如,我有一个表单需要在输入框中输入州/国家,这对于特定选项是必需的。然而,对于其他选项,相同的字段是可选的。对我来说,为每个表单编写验证不是正确的方法,因为我正在利用angularjs。请帮忙。例如,其中一个字段是:
<div style="float:left; width:290px;margin-bottom: 8px;">
  <div style="float:left; margin-right:8px; width: 113px; text-align: right;"> (*)Document Number: </div>
  <div style="float:left; margin-right:8px;width: 160px;">
  <input type="text" ng-model="customerData.docNmbr" placeholder=" Document Number" class="ng-pristine ng-valid" ng-required> </div>
</div>

我的提交按钮是:

<button type="submit" id="submitButton" ng-disabled="userForm.$invalid" class="btn btn-primary">Register</button>

请定义“不起作用”并展示你到目前为止尝试过的内容... - Bun
1
我在工作中必须支持IE8,我直接使用了“require”并且它可以正常工作。出于好奇,你是如何在IE8上进行测试的?如果你在本地运行应用程序,IE8默认会以IE7标准呈现。 - Matt
没问题PJ - 我很感兴趣看看它是否有效,请务必在评论中告诉我。如果不行,可能是因为我使用的某个库正在替我实现它。 - Matt
1
@Matt 应该是有帮助的。如果未填写,字段现在会突出显示。我也会测试表单提交。谢谢。 - newDevGeek
1
@Matt 谢谢你,Matt。它起作用了。 - newDevGeek
显示剩余4条评论
1个回答

2

谢谢你的回答,Dalorzo。可惜,我不能使用Modernizr,因为我可以使用的库/插件已经被团队限制了。 :( 我尝试解决类似于这个的问题 ' <!--[if lte IE 8] > <script> document.createElement('ng-include'); document.createElement('ng-required'); ',但它也不起作用。 - newDevGeek
我不能飞行,因为我受到重力的限制,但如果我遇到问题,并且其他团队已经解决了这个问题,我该如何对其进行限制,这只是我的想法:D - Dalorzo
我理解你的意思,但在这方面无能为力。 - newDevGeek
我会为你的建议点赞,但是我不能因为我没有足够的声望点数。需要15个! - newDevGeek
Modernizr实际上并不会将HTML5功能填充到旧浏览器中。它只提供功能检测,您可以使用它来确定是否需要填充或提供替代脚本。 - John Bledsoe

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接