Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 随机选择菜单选项_Javascript_Html_Arrays_Select Menu - Fatal编程技术网

Javascript 随机选择菜单选项

Javascript 随机选择菜单选项,javascript,html,arrays,select-menu,Javascript,Html,Arrays,Select Menu,基本上,我从一个英文单词数组中选择了5个单词,从另一个数组中选择了1个法语单词,然后用户必须猜测法语单词在英语中的意思。 目前,我正在将正确的英文答案添加到选择菜单的末尾,因为我不知道如何将其随机添加到其他菜单之间,或者更不知道如何将选择菜单选项随机移动 我在下面添加了我的JSFIDLE,它是一个精确的副本。你会意识到底部选项总是正确的!用户将开始了解模式。我还必须在下面添加javascript才能发布JSFIDLE 你应该使用Math.random方法,它应该是这样的: var correct

基本上,我从一个英文单词数组中选择了5个单词,从另一个数组中选择了1个法语单词,然后用户必须猜测法语单词在英语中的意思。 目前,我正在将正确的英文答案添加到选择菜单的末尾,因为我不知道如何将其随机添加到其他菜单之间,或者更不知道如何将选择菜单选项随机移动

我在下面添加了我的JSFIDLE,它是一个精确的副本。你会意识到底部选项总是正确的!用户将开始了解模式。我还必须在下面添加javascript才能发布JSFIDLE
你应该使用Math.random方法,它应该是这样的:

var correctAnswerIndex = Math.floor(Math.random() * 7); //gives random number between 0-6
for (var i = 1; i <= 6; i++) {
    if(i == correctAnswerIndex)
        guess += '<option value="'+i+'">' + correctAns + '</option>';
    else
        guess += "<option value='" + i + "'>" + translate[RanNumbers[i]] + "</option>";
}

您只需调整else语句,因为RANnumber可能没有6项。所以,也许可以引入额外的计数器,它将被用来代替i。类似于translate[RanNumbers[counter++]

只要做一个随机数,从两个数组中取出这个随机数,然后对其他数做4个随机数,检查它们是否不存在都准备好了?嗨,你介意在JSFIDLE上给我看一下吗?更新我当前的一个。我不太明白你的意思@隐秘的想法。。。我确实这样做了,但我确保如果'correctAnswerIndex'为==0,那么我将向其中添加1。在这种情况下,最好立即添加1,因为现在您增加了索引=1的概率:var correctAnswerIndex=Math.floorMath.random*6+1;
var correctAnswerIndex = Math.floor(Math.random() * 7); //gives random number between 0-6
for (var i = 1; i <= 6; i++) {
    if(i == correctAnswerIndex)
        guess += '<option value="'+i+'">' + correctAns + '</option>';
    else
        guess += "<option value='" + i + "'>" + translate[RanNumbers[i]] + "</option>";
}