必需属性在 Safari 中不起作用。
为了解决这个问题,我正在使用 Webshim。一切正常,直到我注意到当我在表单标签上使用onsubmit时,它会在您提交时触发,无论是否有一些必需的输入为空。您会在输入中看到“请填写此字段”,但无论如何都会触发 onsubmit 函数。
<form onsubmit="alert('hi')" action="#">
<input placeholder="native input works" required>
<input type="submit">
</form>
这就是我初始化 Webshim 的方式:
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/webshim/1.16.0/dev/polyfiller.js"></script>
<script>
webshim.activeLang('en');
webshims.polyfill('forms');
webshims.cfg.no$Switch = true;
</script>
在这里,您有一个工作示例。您可以在 Safari 和 Chrome 中尝试它,您会看到警报在 Safari 上触发,而不是在 chrome 中。
https://jsfiddle.net/3pxsvxxj/
拜托,我需要解决这个问题,我找不到办法。
干杯。