我试图通过jQuery更改div的CSS。下面是jQuery代码。
$(".endPollingButton").click(function () {
var endPollingCode = $(this).attr("value");
var correctAnswer = parseInt($(this).attr("id"));
for(LCV=1;LCV<=5;LCV++) {
if(LCV == correctAnswer) {
$("#"+endPollingCode).children(".Bars_"+LCV).css("background-color","green");
alert("check");
} else {
$("#"+endPollingCode).children(".Bars_"+LCV).css("background-color","red");
alert("check");
}
}
});
这是html代码:
for($LCV = 1; $LCV <= $rowCount; $LCV++) {
echo "<div class='graphBlock' id='".$questionCode[$LCV]."' value=''>";
echo "<div id='questionCodeBar'>Quiz Code: ".$questionCode[$LCV]."</div>";
echo "<div id='questionTitleBar'>".$questionName[$LCV]."</div>";
echo "<span class='barsInfo' id='barsInfo1".$LCV."'></span><div class='bars_1' id='bars1".$LCV."' style='width:;'></div>";
echo "<span class='barsInfo' id='barsInfo2".$LCV."'></span><div class='bars_2' id='bars2".$LCV."' style='width:;'></div>";
echo "<span class='barsInfo' id='barsInfo3".$LCV."'></span><div class='bars_3' id='bars3".$LCV."' style='width:;'></div>";
echo "<span class='barsInfo' id='barsInfo4".$LCV."'></span><div class='bars_4' id='bars4".$LCV."' style='width:;'></div>";
echo "<span class='barsInfo' id='barsInfo5".$LCV."'></span><div class='bars_5' id='bars5".$LCV."' style='width:;'></div>";
echo "<button class='endPollingButton' id='".$correctAnswer[$LCV]."' value='".$questionCode[$LCV]."' >End Polling</button>";
echo "</div>";
}
上面的代码不起作用。我不确定是否存在语法错误。两个检查警报都有效。如果您需要更多代码,例如与之链接的HTML,请告诉我,我很乐意提供。如果可以的话请帮忙。感谢。
请帮助.......
答案 0 :(得分:1)
看起来像单/双/三等于拼写错误。
if(LCV = correctAnswer) {
应该是
if(LCV === correctAnswer) {
另外,你的第二个css调用中有一个点,应该有一个逗号。
您可能还会考虑在parseInt
调用中添加一个基数,以防它解析的字符串以0
或其他一些不幸的字符开头:)
Radix是你要解析整数的基础。例如,字符串“101”可以被读作“一百零一”基数10,或者它可以被解释为二进制数,意思是“九”。除非您提供的字符串以parseInt
或0
开头,否则0x
默认为10。查看https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/parseInt
编辑:
我认为这是一个逻辑问题,而不是语法问题。正确答案总是[1,2,3,4,5]中的数字吗?您还应该更改在if / else块中收到警报的消息,以便您可以知道正在执行哪一个。
答案 1 :(得分:0)
你的意思是(LCV == correctAnswer)? :)
答案 2 :(得分:0)
也正确LCV = correctAnswer 而不是使用赋值运算符使用“==”比较操作符
答案 3 :(得分:0)
我发现了问题。你们根据我给你的信息正确回答。结果我所指的那个班,“。Bars _”+ LCV,应该是,“。bars _”+ LCV。谢谢你的帮助。我真的很感激
答案 4 :(得分:-1)
您的功能中存在语法错误
正确
$( “#” + endPollingCode)。儿童( “酒吧_ ”+ LCV)的CSS(“ 背景色”, “红色”);
带
$("#"+endPollingCode).children(".Bars_"+LCV).css("background-color","red");