【问题标题】:Best practices for building a form wizard with multiple steps in plain javascript? [closed]在纯 JavaScript 中构建具有多个步骤的表单向导的最佳实践? [关闭]
【发布时间】:2018-07-20 23:35:47
【问题描述】:

我想做一个问答网络应用程序。这将包括多种形式。 当用户单击下一步按钮时,应加载下一个问题(如步骤 1、2 等)。那么创建多个表单的最佳做法是什么?

我应该为每个表单创建不同的页面吗?

我应该使用 javascript 还是 php 来验证它们?

<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">
          <form id="form1" class="w3-container" method="post" action="#">
 
  <p>      
  <label>Answer 1</label>
  <input name="in1" class="w3-input w3-border" type="text"></p>
  <p>      
  <label>Answer 2</label>
  <input id="in2"  class="w3-input w3-border" type="text"></p>
  <p>      
  <label>Answer 3</label>
  <input id="in3" class="w3-input w3-border" type="text"></p>
  <p>      
  <label>Answer 4</label>
  <input id="in4"   class="w3-input w3-border" type="text"></p>
 <p><button class="w3-btn w3-block w3-indigo">next</button></p>

</form>

【问题讨论】:

    标签: javascript php forms submit wizard


    【解决方案1】:
    • 验证应始终在服务器端进行验证,因为客户端可以由客户端操作和更改。您还可以在客户端验证一些状态,只是为了更“友好地使用”。

    • 您可以在每个页面上创建一个表单或使用 AJAX 加载下一个表单,同时服务器在提交时验证问题/回答者的完整性。

    【讨论】:

    • 我在 w3-schools 上找到了一些东西,但它的 javascript 太多了:w3schools.com/howto/tryit.asp?filename=tryhow_js_form_steps
    • @csandreas1 在此示例中,只有一个表单,但每个步骤都隐藏和显示所有元素。它可能是一个解决方案,而所有这些都在服务器端进行了验证。
    • 我如何在每个页面上制作一个表单并在最后阶段提交时获取它们的值?
    • @csandreas1 例如,您可以将 anwsers 存储在会话中。并在验证最后阶段时删除。
    猜你喜欢
    • 2011-04-12
    • 1970-01-01
    • 1970-01-01
    • 2011-07-27
    • 1970-01-01
    • 2021-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多