我正在创建一个在线测验系统,我在getquestion.php
上使用ajax从quiz.html
处获取问题,我在quiz.html
添加了下一个和上一个按钮,当时用户选择一个答案并点击下一步它转到第二个问题,但是当用户点击上一个按钮时,我想显示之前选择的用户在点击下一个按钮之前选择的选项。我试过但代码不能正常工作请帮助我,我是新手。
quiz.html
<div id='questionArea' style="position:absolute;top:30%;left:1%;"></div>
<button id='next' type="submit" style="position:absolute;top:50%;left:1%;padding:5px;width:80px;background-color:silver;border:1px solid grey;color:white;border-radius:20%;cursor:pointer;">Next</button><button id='prev' type="submit" style='display: none;position:absolute;top:50%;left:10%;padding:5px;width:80px;background-color:silver;border:1px solid grey;color:white;border-radius:20%;cursor:pointer;'>Previous</button>
<script>
$(document).ready(function() {
var number = 0;
$.post('getquestion.php', {number: number}, function(result){
$('#questionArea').html(result);
});
$('#next').click(function() {
number = number + 1;
if (number => 1){
$('#prev').css('display','block');
}
$.post('getquestion.php', {number: number}, function(result){
$('#questionArea').html(result);
});
});
$('#prev').click(function() {
number = number - 1;
if (number < 1){
$('#prev').css('display','none');
}
$.post('getquestion.php', {number: number}, function(result){
$('#questionArea').html(result);
});
});
});
&#13;
getquetion.php
if(isset($_POST['number'])){
$number = $_POST['number'];
}
$sql="SELECT * FROM `questions`";
$result=mysqli_query($conn,$sql);
$qid = array();
$question = array();
$chA = array();
$chB = array();
$chC = array();
$chD = array();
while ($row = mysqli_fetch_assoc($result)) {
$qid[] = $row['question_id'];
$question[] = $row['question'];
$chA[] = $row['ansa'];
$chB[] = $row['ansb'];
$chC[] = $row['ansc'];
$chD[] = $row['ansd'];
$correct = $row['correct_ans'];
}
echo "<div id='question'>".$qid[$number].")"." ". $question[$number] . "</div>";
echo "<input id='a' type='radio' name='a' value='" . $chA[$number] ."'> " . $chA[$number] . "<br>";
echo "<input id='b' type='radio' name='a' value='" . $chB[$number] ."'> " . $chB[$number] . "<br>";
echo "<input id='c' type='radio' name='a' value='" . $chC[$number] ."'> " . $chC[$number] . "<br>";
echo "<input id='d' type='radio' name='a' value='" . $chD[$number] ."'> " . $chD[$number] . "<br>";
?>
<!doctype html>
<html>
<head></head>
<body>
<script>
var value;
$("#a").click(function(){
value = $(this).val();
});
$("#b").click(function(){
value = $(this).val();
});
$("#c").click(function(){
value = $(this).val();
});
$("#d").click(function(){
value = $(this).val();
});
$('#prev').click(function(){
if(value == "something that user selects before"){
$('#').prop("checked",true);
}else{
$('#').prop("checked",false);
}
});
</script>
答案 0 :(得分:0)
您可以在会话中存储该问题的答案,例如
$_SESSION["Q3"] = 3;
然后检查会话是否已设置,如果是,请执行此操作
echo "<input id='d' type='radio' name='a' value='" . $chD[$number] ."'> " . $chD[$number] . "<br>";
到
echo "<input CHECKED id='d' type='radio' name='a' value='" . $chD[$number] ."'> " . $chD[$number] . "<br>";
此。