0

我有一个数组

变量列表= ['A','B','C'], 答案=[];

用户将选择答案,这将更新答案数组。

她/他将选择按钮以匹配列表数组,并使用此

 function response(){

 var allcorrect = 1;

        $.each( list, function( index , value ){ 



              if( value === answer[ index ] ) {

                  console.log( 'Yes',  response[ index ]  );


                } else{

                 console.log( 'No', response[ index ] );
                 allcorrect=0;


                } 

        });


                if (allcorrect==1){


              text = "<p> Correct! You answered: " + response[0] + " and " + response[1] + " and " + response[2]+ "</p> <p> The correct response is A, B, C</p>";


                }  
                else {

                if (allcorrect==0){

              text = "<p> Inorrect. You answered: " + response[0] + " and " + response[1] + " and " + response[2]+ "</p> <p> The correct response is supposed to be  A, B, C</p>";

              }
}

}

所以说这个人选择A,D,C,然后它会说不正确,你回答ADC ...等

我想要发生的是 A 和 C,这是两个正确的响应,将其更改为红色字体,并且 D 保持黑色,因为它不正确。

如何为此添加课程?

4

1 回答 1

1

你为什么不把每个响应都用一个 id 作为自己的元素,这样你以后就可以访问它了。在创建元素时,您可以继续为错误的元素添加样式,或者也给它们一个类。

$("#test").html("response 1:" + "<p id='response" + 1 + "' class='class'>" + responses[0] + "</p>");

或者只是给每个响应一个唯一的 id,稍后当您检查它们是否是正确的响应时可以访问该 ID,然后使用 .addClass() 添加类。

$("#test").html($("#test").html() + "<br> response 2:" + "<p id='response" + 2 + "'>" + responses[1] + "</p>");

$("#response2").addClass("class");

http://jsfiddle.net/vjbRt/3/

于 2013-05-06T16:42:14.917 回答