如何将字符串添加到<input />标记内的变量?

时间:2014-02-11 00:06:16

标签: javascript radio-button

我将使用JavaScript来创建和评分测验。它有20个问题,并随机选择其中10个进行测验。我需要帮助的内容可以在下面的REALLY长行中找到。看看它在哪里说id =“q + correct”?此ID将用于对测验进行评分,以查看是否已选中。变量“q”包含为测验随机选择的数字(从1到10)。示例:如果q = 1(首先选择测验),我将使用document.getElementById('1correct').checked查看是否已选中。但是,我不知道如何在此上下文中将变量“q”加入字符串“correct”。我很感激任何答案。

function choosequestions(){
    var qList = [];
    for(q=1; q < 11; q++){
        var question = Math.floor((Math.random()*20)+1);
        while (qList.indexOf(question) !== -1) {
            question = Math.floor((Math.random()*20)+1);
        }
        qList.push(question);

        if (question==1){
            document.getElementById(q).innerHTML='Question '+ q +'.  Which of these freedoms are protected in the 1st amendment?<br /><br /><input id="q + correct" type="radio" name="fav" value="country" />Freedoms of Religion, Speech and Petition.<br /> <input id="q + .2" type="radio" name="fav" value="blues" />Right to bear arms.<br /> <input id="q + .3" type="radio" name="fav" value="rock" />Right to \"Life, liberty, and the pursuit of happiness.\"<br /> <input id="q + .4" type="radio" name="fav" value="pop" />All of the above.</form>'
        }
    }
}

2 个答案:

答案 0 :(得分:1)

因为长字符串是用撇号封装的,所以你应该能够这样做:

    '<input id="' + q + 'correct" type="radio" name="fav" value="country" />'

答案 1 :(得分:0)

在javascript中,单个撇号''和双撇号""都用于字符串,但可以单独使用。

就像您将第一个q变量添加到html中一样:

document.getElementById(q).innerHTML = 'Question ' + q + '... rest of string';

你需要打破字符串,添加变量q,然后重新添加其余字符串。这需要在innerHTML字符串的多个部分中完成,而不仅仅是{{1发生。

以下是您应该插入的文本的简单介绍:

'correct'

请注意,您必须对输入document.getElementById(q).innerHTML = 'Question '+ q + '. Which of these freedoms are protected in the 1st amendment?<br /><br />' + '<input id="' + q + 'correct" type="radio" name="fav" value="country" />Freedoms of Religion, Speech and Petition.<br />' + '<input id="' + q + '.2" type="radio" name="fav" value="blues" />Right to bear arms.<br />' + '<input id="' + q + '.3" type="radio" name="fav" value="rock" />Right to \"Life, liberty, and the pursuit of happiness.\"<br />' + '<input id="' + q + '.4" type="radio" name="fav" value="pop" />All of the above.</form>'; id'correct''.2'的{​​{1}}执行相同的操作。