0

如果单击“是”按钮,我要做的是重定向到新页面。如果他们单击“否”,我已经设置了提示。但是,需要填写一个表格(姓名和电子邮件)才能使用。如果他们没有填写这些详细信息,我希望出现一个提示,告诉用户他们需要填写它们才能继续。

我对javascript相当陌生,所以任何提示或解释将不胜感激。

下面是html代码

<input type="radio" name="radio" id="yes"><strong>Yes, I agree.</strong> 
<br>
<input type="radio" name="radio" id="no" checked="checked"><strong>No, I do not agree.            </strong><br>
<br>    
If you agree, please enter your full name and email address in the spaces below and press   submit.
<br>
<form> Full Name:<input type="text" name="fullname"></form>
<br>  
<form> Email Address:<input type="text" name="email"></form>
<br>     
<br>
<form action="endPage.jsp" id="form">
<input type="submit" id="submit" value="Submit" name="submit" />
</form>

和javascript代码

var submitBtn = document.getElementById("submit");
var termsChk = document.getElementById("yes");
var formFrm = document.getElementById("emailField");
var formFrm = document.getElementById("nameField");

submitBtn.addEventListener("click", function() {
if (termsChk.checked === true && formFrm)

{
    alert("Checked!");
    formFrm.submit();
} else {
    alert("Please Contact Spearhead Mining Corporation: projects@spearheadmining.com to discuss your options for project submittal!");
}
return false;
});
4

2 回答 2

0

对于更具体的答案,如果您发布是和否按钮的代码以及表单的 HTML 代码,它可能会有所帮助。话虽如此,您通常处理此问题的方式是在“是”按钮的代码中运行您需要运行的任何客户端验证,在这种情况下,检查名称和电子邮件字段是否不为空,然后显示您的错误消息如果一切都无效,则重定向。

例如在您的 yes 处理程序中

if(document.getElementById('emailField').value == null || document.getElementById('namefield') == null){
  /*error handling code goes here*/
  return
 }
else{
  /*redirection code goes here*/
}
于 2013-09-25T17:41:05.597 回答
0

使用带有特定消息的window.confirm()给用户,并使用window.location()重定向到新的 url。

result = window.confirm("Message to user");
if(result) {
     window.location = "new url";
} else {
     //do the rest of logic
}
于 2013-09-25T17:41:53.410 回答