Your select tags need to include the following attributes:
onChange="collectAns(G, P, this.options[this.selectedIndex].value)"
– where G is the group number (appears
as question on screen) and P is the part
number (which part of the group)
Consider each multiple cloze question as a 'Group' and
each available response as an individual 'Part'. Therefore
Group 1 has two parts which both
require a correct answer.
Group 2 has two parts which both
require a correct answer.
In these examples the order of the answers is important.
Groups (questions) must always be numbered sequentially
starting from 1. This does not mean that a question can't
be seen as 'question 1a' to the user. There is no double-up of group numbers.
The number of parts relates to the group.
In this example there are two groups: Each group contains
two parts. Parts must always be numbered sequentially
starting from 1 for each group.
Question#
1
2
3
4
Group 1 – Part#
1
2
Group 2 – Part#
1
2
There is always one image per group (a question on screen).
Images must be named according to their group. For example,
name="iq1" – i means image,
q1 is the group it's attached to. The q is still
used as opposed to g to retain the use of one universal startAgain()
function for resetting. Images should start as blank.gif
with an empty alt. The Javascript will change the image as
appropriate.
It's preferable to link to a separate Javascript file although, for pages
individually loaded into Blackboard, including the script within the HTML
is acceptable.
There are three parts of the script that need to be modified:
Pre-loading of response image placeholders
Setting the question variables
Setting the response image variable paths
The response image placeholders must always start as blank.gif.
Only change the value for the number of images –
for (var i=1; i<=numberofimages; i++) {,
and adjust the path to blank.gif – eval("iq"+i+".src
= \"blank.gif\"");.
Set 2 new variables for each group as Arrays. The variables must appear
as:
var vqX = new Array("","Y","Y");
– where X is the group number and
Y are the option numbers of the correct
answers. There must be as many answers as there are parts
(dropdown menus) in the question.
var uqX = new Array("","0","0");
– where X is the question number and "0"
are placeholders for the user's answers. There must be as many placeholders
as there are answers.
Example: var vq1 = new Array("","3","4");
var uq1 = new Array("","0","0");
Set the paths of the response image variables as needed. Do not
remove or rename these variables.
Below is the source code for the Javascript of the above example.