JavaScript - 如何使其更加动态?

JavaScript


$("#answer_a_btn").click(function() {

  selectAnswer("#answer_a_btn");

  deselectAnswer("#answer_b_btn");

  deselectAnswer("#answer_c_btn");

  deselectAnswer("#answer_d_btn");

});


$("#answer_b_btn").click(function() {

  deselectAnswer("#answer_a_btn");

  selectAnswer("#answer_b_btn");

  deselectAnswer("#answer_c_btn");

  deselectAnswer("#answer_d_btn");

});

$("#answer_c_btn").click(function() {

  deselectAnswer("#answer_a_btn");

  deselectAnswer("#answer_b_btn");

  selectAnswer("#answer_c_btn");

  deselectAnswer("#answer_d_btn");

});

$("#answer_d_btn").click(function() {

  deselectAnswer("#answer_a_btn");

  deselectAnswer("#answer_b_btn");

  deselectAnswer("#answer_c_btn");

  selectAnswer("#answer_d_btn");

}); 

因为我有超过 4 个按钮答案,所以如何才能使其更加动态?


function selectOnlyOneExamButton(examButtonId, examButtonsIds) {

   for(var i = 0; i < examButtonsIds.length; i++)

    {

        if(examButtonsIds[i] == examButtonId)

        {

            console.log("SELECTED ANSWER " + examButtonsIds[i]);

            selectAnswer(examButtonsIds[i]);

        }

        else {

            console.log("DESELECTED ANSWER " + examButtonsIds[i]);

            deselectAnswer(examButtonsIds[i]);

        }  

    }

};

de-/selectAnswer() 只改变当前取消/选择按钮的颜色

我不知道为什么这不起作用。

每次我点击另一个按钮或同一个按钮时,他都会打印出相同的按钮 ID...


PIPIONE
浏览 82回答 2
2回答

蝴蝶不菲

让所有按钮都相同class="answer_btn"。然后你可以做$(".answer_btn").click(function() {&nbsp; select_answer(this);&nbsp; $(".answer_btn").not(this).each(function() {&nbsp; &nbsp; deselect_answer(this);&nbsp; });});

汪汪一只猫

        button.addEventListener("click", function() {        selectAnswer(this);        $(".exam-btn").not(this).each(function() {          deselectAnswer(this);        });        console.log(this.id);    });
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Html5