【发布时间】:2014-12-29 15:19:40
【问题描述】:
好的,在搞砸了很多天之后,阅读了无数的帮助页面,是时候寻求帮助了。这段代码没有问题。我在表单中输入的任何文本都将显示在弹出框中。很好。
<script>
function yesorno1(){
var form = document.getElementById('escalation');
if(form.value != "")
alert("You entered: " + form.value)
else
alert("There is some problem")
}
</script>
<input type='text' id='escalation' />
<input type='button' onclick='yesorno1()' value='Submit' />
如果我将 HTML 从表单更改为单选按钮或下拉选择器,弹出框将始终仅显示列表中第一个单选或第一个下拉选项的值。例如,在下面的代码中,第一个单选选项是“是”,第二个单选选项是“否”。无论我选择是或否,弹出框总是给出“是”。
<script>
function yesorno2(){
var rad = document.getElementById('escalation2');
if(rad.value != "")
alert("You entered: " + rad.value)
else
alert("There is some problem")
}
</script>
Is this an escalation?<br>
<input type='radio' id='escalation2' value='yes'> Yes<br>
<input type='radio' id='escalation2' value='no'> No<br><br>
<input type='button' onclick='yesorno2()' value='Submit' />
有没有人知道这样的编码方法,这样无线电是会给出弹出消息“是”,而无线电不会给出弹出消息否?
【问题讨论】:
-
已经问过了。请看这里stackoverflow.com/questions/15839169/…
-
HTML 中的两个元素不能在同一页面上具有相同的 ID。它总是只会找到第一个。此外,第一个始终具有
yes的值并不意味着它已选中 -
给你。一个工作的 jsfiddle:jsfiddle.net/ianhazzard/vj1o3xcq
-
感谢大家的帮助,我真的很感激。谢谢你教我我做错了什么。我现在都准备好了。非常感谢!
标签: javascript html