Commit ad08f22f1ad3b605e78933b6dc6075f534c0e1b9
1 parent
e3803ea8
Exists in
master
and in
1 other branch
- allow clicking anywhere in the row of the topic list and of options of radio a…
…nd checkbox questions
Showing
3 changed files
with
21 additions
and
2 deletions
Show diff stats
static/js/topic.js
... | ... | @@ -71,6 +71,23 @@ function new_question(type, question, tries, progress) { |
71 | 71 | $('#topic_progress').css('width', (100*progress)+'%').attr('aria-valuenow', 100*progress); |
72 | 72 | MathJax.Hub.Queue(["Typeset",MathJax.Hub,"question_div"]); |
73 | 73 | |
74 | + if (type == "radio") { | |
75 | + $(".list-group-item").click(function () { | |
76 | + var index = $(this).index(); | |
77 | + $("div.list-group input:radio").eq(index).prop("checked", true); | |
78 | + | |
79 | + // $('a.list-group-item-primary').removeClass('list-group-item-primary'); | |
80 | + // $(this).addClass('list-group-item-primary'); | |
81 | + }); | |
82 | + } | |
83 | + else if (type == "checkbox") { | |
84 | + $(".list-group-item").click(function () { | |
85 | + var index = $(this).index(); | |
86 | + $("div.list-group input:checkbox").eq(index).trigger("click"); | |
87 | + }); | |
88 | + } | |
89 | + | |
90 | + | |
74 | 91 | // enable shift+enter to submit |
75 | 92 | $("input:text, input:radio, input:checkbox").keydown(function (e) { |
76 | 93 | if (e.keyCode == 13) { | ... | ... |
templates/question-checkbox.html
... | ... | @@ -7,7 +7,8 @@ |
7 | 7 | {% for n,opt in enumerate(question['options']) %} |
8 | 8 | <a class="list-group-item list-group-item-action"> |
9 | 9 | <div class="custom-control custom-checkbox"> |
10 | - <input type="checkbox" class="custom-control-input" id="{{ n }}" accesskey="{{ n+1 }}" name="answer" value="{{ n }}"> | |
10 | + <input type="checkbox" class="custom-control-input" | |
11 | + id="{{ n }}" accesskey="{{ n+1 }}" name="answer" value="{{ n }}"> | |
11 | 12 | <label for="{{ n }}" class="custom-control-label">{{ md(opt)[3:-5] }}</label> |
12 | 13 | </div> |
13 | 14 | </a> | ... | ... |
templates/question-radio.html
... | ... | @@ -7,7 +7,8 @@ |
7 | 7 | {% for n,opt in enumerate(question['options']) %} |
8 | 8 | <a class="list-group-item list-group-item-action"> |
9 | 9 | <div class="custom-control custom-radio"> |
10 | - <input type="radio" class="custom-control-input" id="{{ n }}" accesskey="{{ n+1 }}" name="answer" value="{{ n }}"> | |
10 | + <input type="radio" class="custom-control-input" | |
11 | + id="{{ n }}" accesskey="{{ n+1 }}" name="answer" value="{{ n }}"> | |
11 | 12 | <label for="{{ n }}" class="custom-control-label">{{ md(opt)[3:-5] }}</label> |
12 | 13 | </div> |
13 | 14 | </a> | ... | ... |