如何从自动填充随机数字的下拉菜单中生成一组文本框

How to Generate a Set of Textboxes from a Dropdown Menu Autofilled with Random Numbers?

本文关键字:文本 一组 下拉菜单 填充 数字 随机      更新时间:2023-09-26

我想使用下拉菜单来选择一组三个文本框,其中每个文本框的数字集都应该包含一组唯一的数字。目前,下拉菜单确实创建了所需数量的文本框集,例如,选择5生成了一组5个文本框,其中填充了随机数字。问题是,它们都是相同的随机数集。

我希望在下拉菜单中选择一个数字可以生成所需的文本框集,然后单击"生成数字"按钮可以在每个文本框集唯一的地方用随机数字填充文本框集。这可以用Javascript、JQuery完成吗?或者我需要使用其他东西吗?

这是我迄今为止的代码。非常感谢你的帮助。

<?php
//generate set of random numbers from 1 to 10000
function RandomNumbers($min, $max, $quantity) {
    $numbers = range($min, $max);
    shuffle($numbers);
    return array_slice($numbers, 0, $quantity);
}
$num = (RandomNumbers(1,10000,10000));
$random1 = $num[0];
$random2 = $num[1];
$random3 = $num[2];
?>
<html>
<head>
<script type='text/javascript' src='js/jquery.js'></script>
</head>
<script type="text/javascript">
//this is the code which I am not sure how to develop >>>
    $(document).ready(function(){
        $counter = 0; // initialize 0 for limiting textboxes
        $('#dropdownadd').change(function(){
            $('#dropdowndiv').html(""); // when the dropdown change set the div to empty
            $loopcount = $(this).val(); // get the selected value
            for (var i = 1; i <= $loopcount; i++)
            {
                //this adds textboxes using dropdown menu but inserts the same number set into each set of textboxes
                $('#dropdowndiv').append('<div><form>Number Set #'+i+'<input type="text" name="num1" class="textbox1" value="<?php echo $random1; ?>" /><input type="text" name="2" class="textbox2" value="<?php echo $random2; ?>" /><input type="text" name="3" class="textbox3" value="<?php echo $random3; ?>" /></div>'); 
            }
        });
    });
</script>

<div id="dropdowndiv">
<!-- this is where textboxes will appear -->
</div>
<div class="choices">
    <span>Adding Textboxes using Dropdown Menu</span>
    <select id="dropdownadd">
        <option value="0">0</option>
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="10">10</option>
        <option value="20">20</option>
    </select>
</div>
</html>
<HTML>
<form name="form" method="post">
<input type="text" name="num1" id="var1" value="<?php echo $random1; ?>" >
<input type="text" name="num2" id="var1" value="<?php echo $random2; ?>" >
<input type="text" name="num3" id="var1" value="<?php echo $random3; ?>" >
<br>
<input type="submit" name="submit" value="Generate Numbers">
</form>
</HTML> 

试试这个http://jsfiddle.net/fedmich/F79nf/

数学.randomMath.round()for循环jquery附加

这是我提出的解决方案

Fedmich也有同样的方法,我只是使用了你提供的代码,修改了需要修改的内容,而忽略了不需要修改的部分(我刚才说了什么)。

祝你好运。

这是一个完整的解决方案,根据下拉选项值的选择,当我们点击每个表单附带的名为"生成按钮"的按钮时,它会为每个输入集生成唯一的值。

在Codebins上试用此解决方案:http://codebins.com/codes/home/4ldqpb7