Changeset 37 for Dev


Ignore:
Timestamp:
07/22/11 13:46:53 (14 years ago)
Author:
fpvanagthoven
Message:

When answers change, the questionID gets removed so that a new one is made.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • Dev/trunk/classes/SurveyCreationTool.php

    r36 r37  
    119119                var answersDiv = document.getElementById("answersDiv" + numQ );
    120120               
    121                 /* When type changes, remove question ID, because question changes */
    122                 var questionIDInput = document.getElementById("questionID" + numQ);
    123                 if (questionIDInput != null)
    124                 {
    125                     var questionsDiv = document.getElementById("questionsDiv");
    126                     questionsDiv.removeChild(questionIDInput);
    127                 }
    128 
     121                removeQuestionID(numQ);
     122               
    129123                answersDiv.answerCount = 1;
    130124                answersDiv.clicked = null;
     
    181175
    182176            }
    183                                                                                                                                                                                                                                                                                    
     177           
     178            function handleAnswerChange(questionNumber)
     179            {
     180                removeQuestionID(questionNumber);
     181            }
     182           
     183            function removeQuestionID(questionNumber)
     184            {
     185                /* When type changes, remove question ID, because question changes */
     186                var questionIDInput = document.getElementById("questionID" + questionNumber);
     187                if (questionIDInput != null)
     188                {
     189                    var questionsDiv = document.getElementById("questionsDiv");
     190                    questionsDiv.removeChild(questionIDInput);
     191                }
     192
     193            }
     194                     
    184195                                                                                                                                                                                                                                                                           
    185196            function addOption(questionNumber, optionStr)
     
    196207                                                                                                                                                                                                                                                                               
    197208                var htmlStr = "<input type='text' name='q" +
    198                     questionNumber + "ans" + answerCount + "' value='" + optionStr + "' />";
     209                    questionNumber + "ans" + answerCount + "' onchange='handleAnswerChange(" + questionNumber + ")' value='" + optionStr + "' />";
    199210                                                                                                                                                                                                                                                       
    200211                if (answersDiv.clicked == null)
     
    213224                                                                                                                                                                                                                                                                                       
    214225                answersDiv.appendChild(answerDiv);
    215                 answersDiv.answerCount++;
     226                answersDiv.answerCount
     227               
     228                handleAnswerChange(questionNumber);
    216229            }
    217230                                                                                                                                                                                                                   
     
    226239                    answersDiv.answerCount--;
    227240                }
     241               
     242                handleAnswerChange(questionNumber);
    228243            }
    229244                                                                                                                                                                                                                                           
     
    259274                var answerDiv = document.createElement("div");
    260275                answerDiv.className = "answerDiv";
    261                 answerDiv.innerHTML = "<label>Left label</label><input type='text' value='" + left + "' name='q" + questionNumber + "ans1' />" +
    262                     "<label>Right label</label><input type='text' value='" + right + "' name='q" + questionNumber + "ans2' />" +
    263                     "<label>Scale count</label><input type='text' value='" + incr + "' name='q" + questionNumber + "ans3' />" +
     276                answerDiv.innerHTML = "<label>Left label</label><input type='text' value='" + left + "' onchange='handleAnswerChange(" + questionNumber + ")' name='q" + questionNumber + "ans1' />" +
     277                    "<label>Right label</label><input type='text' value='" + right + "' onchange='handleAnswerChange(" + questionNumber + ")' name='q" + questionNumber + "ans2' />" +
     278                    "<label>Scale count</label><input type='text' value='" + incr + "' onchange='handleAnswerChange(" + questionNumber + ")' name='q" + questionNumber + "ans3' />" +
    264279                    "<div id='inputCheckFeedback'" + questionNumber + "";
    265280                                                                                                                                                                                                                                           
Note: See TracChangeset for help on using the changeset viewer.