【发布时间】:2013-06-05 16:45:26
【问题描述】:
只要我打开没有 JavaScript 的网页,<noscript> 标签中的表单就会显示为代码,但在我刷新它之后似乎还不错。有没有一种方法可以在禁用 JavaScript 后立即正确显示表单,或者有没有一种方法可以在未启用 JavaScript 时立即重新加载页面?
我尝试过使用元刷新,但我想不出一种不使用 JavaScript 只重新加载一次的方法。
代码如下:
<div id="JS" class="span4" style="display: none">
<h2 class="side">contact</h2>
<h3 class="side">message</h3>
<br><br>
<form id="animate" >
<input id="name" name="Name" type="text" value="" placeholder="Your Name" maxlength="25" >
<input id="email" name="Email" type="text" value="" placeholder="Your E-mail" maxlength="100">
<textarea id="Message" name="Message" placeholder="Your Message" spellcheck="true" rows="6"></textarea>
<input id="spam" type="text" name="spam" style="display: none;" value=""/>
<input id="submit" type="submit" name="submit" value="Submit"/>
</form>
<div style="color: black; font-family: urwgroteskregular;" id="thanks">
<h2> Thank you, your message has been received.</h2>
</div>
</div>
<div class="span4" id="noScript">
<noscript>
<h2 class="side">contact</h2>
<h3 class="side">message</h3>
<br><br>
<form action='process.php' method="post" >
<input name="Name" type="text" value="" placeholder="Your Name" required="" maxlength="25">
<input name="Email" type="text" value="" placeholder="Your E-mail" required="" maxlength="100">
<textarea name="Message" placeholder="Your Message" spellcheck="true" rows="6" required=""></textarea>
<input type="text" name="spam" style="display: none;" value=""/>
<input type="submit" name="submit" value="Submit"/>
</form>
</noscript>
<script type="text/javascript">
document.getElementById('JS').style.display = 'block';
document.getElementById('noScript').style.display = 'none';
</script>
【问题讨论】:
-
重新加载不正常的页面不是解决方案。发布代码或页面链接,我们会找到方法。最好的是css
-
停止制作没有 JavaScript 的网站。现在是 2013 年。
-
先生,我知道现在是 2013 年,我有两种形式,一种在启用 JS 时显示,另一种在未启用时显示。当我从 JS 切换到 no-JS 时,我在 noscript 中的所有代码都显示为代码,需要刷新。
-
所以使用 js 隐藏非 js 表单或在此处发布 html 以便我们了解为什么需要两个表单:
document.write('<style>.nonjs { display:none}</style>') -
@mplungjan 只需在问题中添加您的代码
标签: javascript html noscript