要创建包含多个步骤的表单,代码如下-
<!DOCTYPE html> <html> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <style> * { box-sizing: border-box; } body { background-color: #f1f1f1; } #regForm { margin: 100px auto; font-family: Raleway; padding: 40px; width: 70%; min-width: 300px; } h1 { text-align: center; } input { padding: 10px; width: 100%; font-size: 17px; font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; border: 1px solid #aaaaaa; } /* Mark input boxes that gets an error on validation: */ input.invalid { background-color: #ffdddd; } /* Hide all steps by default: */ .page { display: none; } button { background-color: #4CAF50; color: #ffffff; border: none; padding: 10px 20px; font-size: 17px; font-family: Raleway; cursor: pointer; } button:hover { opacity: 0.8; } #prevBtn { background-color: #bbbbbb; } .step { height: 15px; width: 15px; margin: 0 2px; background-color: #bbbbbb; border: none; border-radius: 50%; display: inline-block; opacity: 0.5; } .step.active { opacity: 1; } .step.finish { background-color: #4CAF50; } </style> <body> <form id="regForm"> <h1>Register:</h1> <div class="page">Name: <p><input placeholder="名:" oninput="this.className = ''" name="fname"></p> <p><input placeholder="姓氏:" oninput="this.className = ''" name="lname"></p> </div> <div class="page">Contact Info: <p><input placeholder="E-mail:" oninput="this.className = ''" name="email"></p> <p><input placeholder="Phone:" oninput="this.className = ''" name="phone"></p> </div> <div class="page">Birthday: <p><input placeholder="Date:" oninput="this.className = ''" name="dd"></p> <p><input placeholder="Month:" oninput="this.className = ''" name="nn"></p> <p><input placeholder="Year:" oninput="this.className = ''" name="yyyy"></p> </div> <div style="overflow:auto;"> <div style="float:right;"> <button type="button" id="prevBtn" onclick="nextPrev(-1)">Previous</button> <button type="button" id="nextBtn" onclick="nextPrev(1)">Next</button> </div> </div> <div style="text-align:center;margin-top:40px;"> <span class="step"></span> <span class="step"></span> <span class="step"></span> </div> </form> <script> var currentTab = 0; showTab(currentTab); function showTab(stepNo) { var pageEle = document.getElementsByClassName("page"); pageEle[stepNo].style.display = "block"; if (stepNo == 0) { document.getElementById("prevBtn").style.display = "none"; } else { document.getElementById("prevBtn").style.display = "inline"; } if (stepNo == (pageEle.length - 1)) { document.getElementById("nextBtn").innerHTML = "Submit"; } else { document.getElementById("nextBtn").innerHTML = "Next"; } changeStepIndicator(stepNo) } function nextPrev(stepNo) { var pageEle = document.getElementsByClassName("page"); if (stepNo == 1 && !checkForm()) return false; pageEle[currentTab].style.display = "none"; currentTab = currentTab + stepNo; if (currentTab >= pageEle.length) { document.getElementById("regForm").submit(); return false; } showTab(currentTab); } function checkForm() { var pageEle, inputEle, i, valid = true; pageEle = document.getElementsByClassName("page"); inputEle = pageEle[currentTab].getElementsByTagName("input"); for (i = 0; i < inputEle.length; i++) { if (inputEle[i].value == "") { inputEle[i].className += " invalid"; valid = false; } } if (valid) { document.getElementsByClassName("step")[currentTab].className += " finish"; } return valid; } function changeStepIndicator(stepNo) { var i, pageEle = document.getElementsByClassName("step"); for (i = 0; i < pageEle.length; i++) { pageEle[i].className = pageEle[i].className.replace(" active", ""); } pageEle[stepNo].className += " active"; } </script> </body> </html>
输出结果
上面的代码将产生以下输出-
问题内容: 我想在Android中创建带有多列的表格。我看到的大多数示例都是2列。(我是Java和Android的新手。)我需要3-4列,并且应该能够在表中动态添加行。谁能给我提供示例代码。(我在WIN 7中使用Eclipse) 问题答案: 我假设您正在谈论的是TableLayout视图,而不是数据库中的表? 如果是这样,这是一个具有三列三行的表的XML示例。 每个 元素在表中创建一行,并且该元素
问题内容: 我想在Django中创建一个多步骤表单,该表单仅在所有步骤结束时提交要处理的数据。每个步骤都必须能够访问和显示我们在先前步骤中输入的数据。 有没有办法用Django做到这一点?Django的Form-Wizard无法处理此基本功能。 问题答案: 当然,在Django中有一种方法可以做到这一点。 一种方法是保持会话中的值,直到最后提交它们。如果返回上一步,则可以使用会话中保留的值填充表单
给定一个使用分区的Spring批处理作业,是否可能有多个分区步骤? 例如: 在上述示例中,是否可以将另一个添加到(最好不需要为每个分区步骤提供分区器)?如果没有,是否有其他方法来配置多个步骤,这些步骤将针对每个分区逐个执行?
问题内容: 我正在尝试创建一个,但是在方法中添加一些错误。 请帮助我如何添加参数以及如何将其传递给在其中声明a和的另一个函数。 我的另一个功能是insertData(…) 我正在尝试创建一个并将其传递给函数。但是,当我在第一个函数中调用方法时,它将引发错误。 错误是 你调用的对象是空的 问题答案: 如果不调用其构造函数(新),则不能使用任何变量(例如,参考对象),但是不能使用新变量直接对其进行初始
我的问题是--如何创建自定义列表视图,而不仅仅是重复一个自定义视图,而是像在Instagram或其他应用程序中,列表包括其他视图,这看起来就像滚动视图和列表视图android其他视图一样,但Roman Guy说“在滚动视图中的列表视图是一种非常糟糕的方式”,我同意这一点,不要相信谷歌使用这种方式... 使用ListView或Recolyer View实现此功能的最佳方法是什么
我需要扫描日志文件以找到一些子字符串。 如何在单个正则表达式中组合以下条件: 查找子字符串“AAA”、“BBB”、“CCC”,但 我尝试了类似(?DDD | EEE | FFF)(AAA | BBB | CCC)的东西,但没有成功。 Java模式类应该支持正则表达式语法。 非常感谢。