如果用户已经完成表单,则只有提交按钮可以单击,并且提交按钮将链接到另一个页面

问题描述 投票:-3回答:2

我想创建一个关于作业应用程序页面的表单,但我想做一些验证,如果用户已填满表单中的所有元素,只有提交按钮可以单击,并且提交按钮将链接到另一个html页面显示“您的申请成功收到”。我该怎么办,非常感谢你。我是我代码的一部分

<label for="Minimum Salary (MYR)"><img src="Web Page Image (Koh Xin Hao)/Money.png"/>&nbsp;&nbsp;Minimum Salary (MYR)</label>
<input type="text" id="Minimum Salary (MYR)" name="Minimum Salary (MYR)" value="RM "  maxlength="8" required="required">
<label for="Nationality"><img src="Web Page Image (Koh Xin Hao)/Card Issuing Country.png">&nbsp;&nbsp;Nationality</label>
<input type="text" id="Nationality" name="Nationality" placeholder="Malaysia" required="required">
<div><p>The application process will take up to 2 days. If your application is approved by the company, we will inform you via email or telephone call. Thanks for you application ^-^</p></div>
<input type="submit" required="required" class="btn" onclick="location.href='Payment Successful.html'"/>
<button type="submit" class="btn" onclick="location.href='Payment Successful.html'">Submit</button>

看到表单没有填满,但提交按钮也可以点击。我已经在我的代码中放了required =“required”但验证不起作用。

html5
2个回答
0
投票

如果我没有错,那么你想询问如何验证所有字段并将表单提交到新页面。

如果是的话

<input type="?" name="?" required />

添加必需属性以要求该字段

并为您希望提交该表单的表单提供一个操作属性

Example <form action="your page" type="post">

希望它能帮到你

如果我误判你的问题,请告诉我


0
投票

您需要使用Javascript检查字段是否已填写,如果是,则禁用该按钮。

您还需要将required="required"更改为required,如此处所示https://www.w3schools.com/tags/att_input_required.asp

您还需要将其全部包装在表单标记中,并根据https://www.w3schools.com/tags/tag_form.asp使用操作字段提供下一页

您可能需要在Javascript中进行更多验证,如果字段不为空,则基本上只禁用其他按钮。你可以在这里看到更多关于JS验证的信息qazxsw poi

https://www.w3schools.com/js/js_validation.asp
function validateForm(){
  var input1 = document.getElementById("input1").value;
  var input2 = document.getElementById("input2").value;
  if(input1==""){
    console.log("input1 is blank!");
  }else if(input2==""){
    console.log("input2 is blank!");
  }else{
    console.log("inputs are not blank");
    document.getElementById("button").disabled = true;
  }
}
© www.soinside.com 2019 - 2024. All rights reserved.