我有以下代码:http://jsfiddle.net/TXQ9U/37/(见下面的代码)
我想要实现的是,我按下提交按钮,我得到一个弹出窗口说要么答案是正确的,要么答案是不正确的,并加一个分数。我想我已经把它设置好了,但没有让它工作。有什么建议吗?
尊敬的朋友
Marc HTML:<body>
<p> Question 1: what sport does Roger Federed play? </p>
<table width = "200">
<tr>
<td> <input type="radio" name="radio" class="a1" value="a1" /> Cricket </td>
<td> <input type="radio" name="radio" class="a2" value="a1" /> Tennis </td>
<td> <input type="radio" name="radio" class="a3" value="a1" /> Tennis </td>
<td> <input type="radio" name="radio" class="a4" value="a1" /> Tennis </td>
</tr>
</table>
<button class="button1"> Submit </button>
<button class ="button2"> Next page</button>
</body>
jQuery var score= 0;
function submit(){
var correctanswer = document.getElementById("a2")
if(correctanswer.checked === true) {
score++;
alert("Answer is correct" + score)
}
else {
alert("Answer is not correct")
}
}
$(".button1").on("click",function(){
alert(submit());
});
您没有ID为a2
的元素,这将是一个类,因此getElementById
失败
因为你已经在使用jQuery了你可以输入
function submit() {
var correctanswer = $(".a2");
if (correctanswer.is(':checked')) {
return "Answer is correct";
} else {
return "Answer is not correct";
}
}
小提琴
既然你使用的是jQuery:
<body>
<script type="text/javascript">
var score = 0;
$(document).ready(function() {
$(".button1").on("click", function () {
submit();
});
});
function submit() {
var correctanswer = $("#a2");
if (correctanswer.is(":checked")) {
score++;
alert("Answer is correct" + score);
}
else {
alert("Answer is not correct");
}
}
</script>
<p> Question 1: what sport does Roger Federed play? </p>
<table width="200">
<tr>
<td> <input type="radio" name="radio" id="a1" value="a1" /> Cricket </td>
<td> <input type="radio" name="radio" id="a2" value="a1" /> Tennis </td>
<td> <input type="radio" name="radio" id="a3" value="a1" /> Baseball </td>
<td> <input type="radio" name="radio" id="a4" value="a1" /> Basketbakk </td>
</tr>
</table>
<button class="button1"> Submit </button>
<button class="button2"> Next page</button>
</body>