2012-02-15 57 views
0

我试图做一个琐事游戏的事情,它会在稍后有很好的CSS布局。但我需要将结果写在页面上(很简单),但我想不出一种处理结果的好方法。这里是我的代码:如何处理我正在制作的这个琐事游戏的答案? (Javascript)

function testResults (form) { 
var answer = form.inputbox.value; 
if (answer == /*This is where I'm having troubles at! */) { 
document.getElementById("result").innerHTML = "Right!" 
} else { 
    document.getElementById("result").innerHTML = "Wrong!" 
} 
var triviaQ = []; 
triviaQ[0] = {que: "Answer true.", ans: true} 
triviaQ[1] = {que: "Answer false.", ans: false} 
triviaQ[2] = {que: "Answer John.", ans: "John"} 
triviaQ[3] = {que: "Answer herp.", ans: "herp"} 

var Q = triviaQ.length; 
var currentTrivia=Math.round(Math.random()*(Q-1)); 
function showtriviaQ(){document.getElementById("question").innerHTML = triviaQ[currentTrivia];} 

正如你所看到的,除了评论的位置外,我完成了大部分工作。 “if”语句首先检查您的答案(从文本框)到当前问题的属性。

这些问题是完全随机的,以测试它是否可行,但我无法想出在“if”语句检查中编写属性的方法。

+0

我不知道我理解的问题;如果您知道当前的问题,则需要将该值转换为与问题的“ans”属性相当的值。 – 2012-02-15 01:21:31

+0

请注意,您应该使用Math.floor(Math.random()* Q)。 Math.random()返回区间[0,1 []中的数字。当你乘以Q时,你会得到区间[0,Q [中的一个数字,并且当你使用floor时,你会在[0,Q-1]区间得到一个等分的整数。你的方式,使用轮,你得到0和Q-1其余数字的一半概率。 – djjeck 2012-02-15 22:25:39

回答

0

我认为这会奏效。

if(answer == trivia[currentTrivia].ans) 

你需要解析布尔值,这样他们就会真的等于:

var isTrueSet = (myValue === 'true'); 

here

相关问题