通过单选选择点击提交时需要显示警报
Need to display an alert when hitting submit via radio choices
edit:我认为评论中提出的类似问题对:(没有帮助。除非我真的很不擅长这个...我可以收到一条简单的警报消息,但无法收到要显示的单个单选按钮的警报。
我只是在做一个简单的表单,带有带有 Javascript 的单选按钮,以便在选择其中一个选项时点击提交后发出警报。我是Javascript的新手,所以我不确定我还能做什么......
HTML 有效,但其内部功能根本不起作用。我不知道还能做什么。任何建议将不胜感激。
<!DOCTYPE html>
<html>
<head>
<title> Gender Check </title>
<meta charset ="UTF-8">
</head>
<body>
<form id= "form" name ="form" onsubmite="gender()">
<label>Male
<input type="radio" id="male" name="male"/>
</label>
<label>Female
<input type="radio" id="female" name="female"/>
</label>
<label>Trans
<input type="radio" id="trans" name="trans"/>
</label>
<label>Alien
<input type="radio" id="alien" name="alien"/>
</label>
<label>Boeing AH-64 Apache Attack Helicopter
<input type="radio" id="helicopter" name="helicopter"/>
</label>
<input type="submit" name="submit" value="Don't lie to me."/>
</form>
<script type="text/javascript">
function gender() {
var male=document.form[0].element[0];
var female=document.form[0].element[1];
var trans=document.form[0].element[2];
var alien=document.form[0].element[3];
var helicopter=document.form[0].element[4];
if (document.getElementById('male').checked == true)
{
alert("You are a Male.")
}
else if (document.getElementById('female').checked == true)
{
alert("You are a Feale.")
}
else if (document.getElementById('trans').checked == true)
{
alert("You are Trans.")
}
else if (document.getElementById('alien').checked == true)
{
alert("You are an...uh...Alien?")
}
else if (document.getElementById('helicopter').checked == true)
{
alert("You are definitely not a four-blade, twin-turboshaft attack helicopter with a tailwheel-type landing gear arrangement and a tandem cockpit for a two-man crew.")
}
else
{
alert("Please pick a choice")
}
}
document.forms[0].onsubmit = gender;
</script>
</body>
</html>
错误是:
- 您使用的是
document.form[0].element[1]
而不是document.form[1]
- 你写的
onsubmite
而不是onsubmit
- 您的所有无线电输入都具有相同的
name
属性,因此您可以选择多个选项。应为同一组的每个单选按钮使用相同的名称 - 您可以仅通过
male.checked
来减少male.checked == true
function gender() {
var male = document.form[0];
var female = document.form[1];
var trans = document.form[2];
var alien = document.form[3];
var helicopter = document.form[4];
if (male.checked) {
alert("You are a Male.")
} else if (female.checked) {
alert("You are a Female.")
} else if (trans.checked) {
alert("You are Trans.")
} else if (alien.checked) {
alert("You are an...uh...Alien?")
} else if (helicopter.checked) {
alert("You are definitely not a four-blade, twin-turboshaft attack helicopter with a tailwheel-type landing gear arrangement and a tandem cockpit for a two-man crew.")
} else {
alert("Please pick a choice")
}
}
<!DOCTYPE html>
<html>
<head>
<title>Gender Check</title>
<meta charset="UTF-8">
</head>
<body>
<form id="form" name="form" onsubmit="gender()">
<label>Male
<input type="radio" id="male" name="choice" />
</label>
<label>Female
<input type="radio" id="female" name="choice" />
</label>
<label>Trans
<input type="radio" id="trans" name="choice" />
</label>
<label>Alien
<input type="radio" id="alien" name="choice" />
</label>
<label>Boeing AH-64 Apache Attack Helicopter
<input type="radio" id="helicopter" name="choice" />
</label>
<input type="submit" name="submit" value="Don't lie to me." />
</form>
</body>
</html>
注意
您可以使用document.form.choice[0]
代替document.form[0];
(表单的第一个元素(,它将查找无线电列表并选择第一个[0]
<form id= "form" name ="form" onsubmit="gender()">
您需要关联一个名为 onsubmit
的事件,该事件将在提交表单时调用gender()
函数。
您可以通过函数返回 false 来阻止提交,为此您需要做这样的事情
onsubmit="return gender()"
如果要提交表单,请将按钮类型更改为button
并将事件关联为onclick='gender()'
,并保持其余代码不变。
相关文章:
- 在我的网站上显示最近提交的文章/图片
- HTML5在提交并显示所需标签后显示隐藏的表单元素
- 如何在单击“提交”按钮时为“新建”窗口编写JavaScript,用“确定”和“取消”显示注册信息
- 提交表单时,显示或识别隐藏的必填字段并将其集中
- 表单提交没有'如果为空,则不会显示错误消息
- 如何在同一页面上显示用户提交的数据
- 如何在将鼠标悬停在提交/锚点上时检查复选框是否已选中,并显示提示用户这样做的警报
- 显示带有表单提交的单击事件的 toastR
- 提交后如何递增和显示表单数量
- 在表行鼠标悬停时显示提交按钮
- 在 AngularJS 中显示提交时验证错误消息
- React JS显示提交后的数据
- 仅当选择选项时,才在多个表单上显示提交按钮
- 点击文本区域时显示提交按钮
- 我如何隐藏和显示提交按钮时,一个是按钮被点击
- 在文本区域字段中键入时显示提交按钮
- Rails:Foundation5显示提交模式按钮
- 在更改单选按钮状态时显示提交按钮.如何
- 显示提交<链接onchange并传递已更改的输入框的值
- Rails在同一页面显示提交后的信息