所以我尝试做的基本上是检查来自服务器的响应是否包含替代方案。如果它确实那么它应该打印替代品,隐藏我将回答问题的文本区域,如果问题不包含替代品并显示单选按钮。问题是,它打印出响应,但从不隐藏/显示文本区域或单选按钮。
我尝试将可见性的代码放在按钮中以查看它是否在click上工作,但确实如此,但是当我在if语句中放入相同的代码时它不起作用。
另外,另一个问题是,它不是打印出实际的替代品,而是打印出Object对象,但是当我尝试打印出问题时,它会正确打印出来。
HideAllRadios
和ShowArea
函数与if
语句中的函数基本相同,但相反。
以下是代码:
QuestionReq.onreadystatechange = function(){
if(QuestionReq.readyState === 4 && QuestionReq.status === 200) {
response = JSON.parse(QuestionReq.responseText);
console.log(response);
questionLink.innerText = response.question;
url = response.nextURL;
// questAltLink.innerText = response.alternatives;
if(response.alternatives !=null){
questAltLink.innerText = response.alternatives;
AnswerArea.style.visibility = "hidden";
RadioArea.style.visibility = "visible";
}
HideAllRadios();
ShowArea();
}
以下是它们的声明方式:
var questions = function () {
var AnswerArea = document.getElementById("AnswerArea");
var RadioArea = document.getElementById("radioplace");