我的代码有问题。当我单击带有问题编号的按钮时,出现问题,并且按钮变为红色。当我回答问题并提交问题并单击保存时,该按钮应变为绿色。但这不起作用。如果我将类更改为“ btn”,则不使用id,而是将整个按钮更改为绿色。标记也相同,以供复查。这是我的代码:
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
var qn;
var roll='<?php echo $roll; ?>';
var branch=roll.substring(6,8);
$(".btn").click(function(){
qn=$(this).attr("id");
$(this).css('background-color', '#ff8787');
$.ajax({
type:'POST',
url:'test4.php',
data:'br='+branch+'&rno='+roll+'&qst_id='+qn,
success:function(html) {
$('#two').html(html);
}
});
});
$('#save').click(function(){
$('#'+qn+'').css('background-color', '#6afc49');
});
$('#review').click(function(){
$('#'+qn+'').css('background-color', '#f259d4');
});
});
</script>
</head>
<body>
<div id="content">
<div id="two"></div>
<div id="three">
<div id="qns">
<?php
$j=0;
for($i=1;$i<=20;$i++)
{
$j++;
echo"  <button class='btn' id='$i' value='$i'>$i</button>  ";
if($j==4)
{
echo"<br></br>";
$j=0;
}
}
?>
</div>
</div>
</div>
<div id="options"><button id="review">Mark for Review</button><button id="save">Save</button></div>
</body>
</html>
答案 0 :(得分:0)
您需要将整个对象而不是ID存储在qn
变量中:
var qn;
var roll='<?php echo $roll; ?>';
var branch=roll.substring(6,8);
$(".btn").click(function(){
qn=$(this);
$(this).css('background-color', '#ff8787');
$.ajax({
type:'POST',
url:'test4.php',
data:'br='+branch+'&rno='+roll+'&qst_id='+qn.attr('id'),
success:function(html)
{
$('#two').html(html);
}
});
});
$('#save').click(function(){
qn.css('background-color', '#6afc49');
});
$('#review').click(function(){
qn.css('background-color', '#f259d4');
});