javascript - 无 JavaScript 浏览器的 Noscript 表单后备

标签 javascript html forms noscript client-side-scripting

我正在为我们 future 的产品之一编写登陆页面,但遇到了一些麻烦

    <form novalidate method="POST" class="subscribe-form">
    <noscript>
      </form>
      <form method="POST" action="/" class="subscribe-form">
    </noscript>
      <input type="email" placeholder="{subscribe-status}" class="input-lg" name="email">
      <input type="text" value="general" class="hidden" name="interest" class="interest-field">
      <input type="submit" value="Let me know!" class="btn btn-blue btn-lg" data-location="header">
    </form>
    <span class="hint">*Prepare to be amazed. We promise we won't spam you.</span>

这个想法是为支持浏览器的js定义表单并为客户端验证做好准备,但在无脚本浏览器的情况下准备好后备。但chrome渲染它是这样的chrome-render

任何

最佳答案

HTML 无效;不同的浏览器可能会以不同的方式呈现它。 W3C 验证器是您的 friend :http://validator.w3.org/

如果 JS 被关闭,你的验证将不会运行,你实际上不需要做任何事情;只需编写一种形式并将其用于两种情况。如果您需要/想知道服务器端是否已运行客户端验证,请包含 <input type="hidden" name="clientvalidated" value="false">在您的表单中并使用 JS 将 value 属性更改为 true。

请注意,您必须在服务器上进行验证,因为客户端不受信任。

关于javascript - 无 JavaScript 浏览器的 Noscript 表单后备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24861375/

相关文章:

html - 从 Silverlight 添加 innerHTML 不会应用样式

javascript - 单击其他按钮时隐藏一个表单(两个按钮,两个表单)(PHP/HTML/Javascript)

javascript - 使用 jQuery 显示警告

javascript - ng-click 没有在 AngularJS 中触发

javascript - 如何在播放 HTML 5 视频(如 Youtube 广告)时添加图像/DIV?

javascript - 表头固定的JS代码TH宽度必须等于TD宽度

javascript - Extjs KeyMap 不作用于defaultEventAction,而是执行默认的浏览器操作

javascript - Jquery中的.data()总是返回 "undefined"

javascript - 如何 jQuery - 添加按钮插入最多 10 个新输入

php - jQuery - 将所有表单输入值存储在隐藏输入中