Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.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/8/logging/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 如何使用java脚本检查10个复选框中的6个随机值_Javascript - Fatal编程技术网

Javascript 如何使用java脚本检查10个复选框中的6个随机值

Javascript 如何使用java脚本检查10个复选框中的6个随机值,javascript,Javascript,(通过使用JAVASCRIPT)在我的应用程序中,我有多个复选框(假设有10个)。当我要点击lucky dip这样的按钮时,它必须自动选择6个随机复选框。当我再次单击同一按钮时,我希望从10个初始值中获得不同的6个值,除了第一个值。 我可以从10个复选框中选择6个复选框(值不不同) 你能给我一些建议吗 以下是您需要执行的步骤(使用jQuery) 步骤1:将10复选框id存储在数组中 步骤2:洗牌数组 步骤3:使用for Loop循环洗牌数组,直到有6个值,然后选中复选框 这是演示,这是一个纯Ja

(通过使用JAVASCRIPT)在我的应用程序中,我有多个复选框(假设有10个)。当我要点击lucky dip这样的按钮时,它必须自动选择6个随机复选框。当我再次单击同一按钮时,我希望从10个初始值中获得不同的6个值,除了第一个值。 我可以从10个复选框中选择6个复选框(值不不同)


你能给我一些建议吗

以下是您需要执行的步骤(使用jQuery)

步骤1:将10
复选框
id存储在数组中

步骤2:洗牌数组

步骤3:使用
for Loop
循环洗牌数组,直到有6个值,然后选中复选框


这是演示,

这是一个纯Javascript示例,用于检查6个随机复选框:

function getRand(exclude, max)
{
    var dupe = true;
    var myRandom;

    while(dupe)
    {
        myRandom = Math.floor(Math.random() * max);

        var found = false;
        for(var i=0;i<exclude.length; i++)
        {
            if(myRandom == exclude[i])
            {
                found = true;   
            }
        }

        if(!found) dupe = false;
    }

    return myRandom;
}

window.onload = function(){

    document.getElementById("lucky").onclick = function(){

        var checkboxList = document.getElementsByName("something[]");
        var rands = [];

        var total = 6;

        for(var j=0; j<checkboxList.length; j++){ checkboxList[j].checked = false; }

        for(var i=0; i<total; i++)
        {
            var myRandom = getRand(rands, checkboxList.length);
            rands.push(myRandom);
        }

        for(var x=0; x<rands.length; x++)
        {
            checkboxList[rands[x]].checked = true;   
        }

    };        

};​
函数getRand(排除,最大值)
{
var-dupe=true;
var-myRandom;
while(dupe)
{
myRandom=Math.floor(Math.random()*max);
var=false;

对于(var i=0;i)您尝试过什么吗?对于您选择6个不同复选框的意思感到困惑,然后再次单击时,您会得到另一个不同的6个值…那么它应该与您选择的前6个不同吗?如果总共只有10个复选框,这不是不可能吗?