0

ドロップダウン メニューを使用して、テキスト ボックスの各数値セットに一意の数値セットを含める必要がある 3 つのテキスト ボックスのセット数を選択できるようにしたいと考えています。現在、ドロップダウン メニューは必要な数のテキスト ボックスのセットを作成します。たとえば、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> 
4

3 に答える 3

1

これを試してみてください http://jsfiddle.net/fedmich/F79nf/

Math.random Math.round()forループとjqueryの追加

于 2012-07-09T04:30:08.350 に答える
1

これが私が思いついた解決策です

フェドミッチも同じアプローチをとっています。私はあなたが提供したコードを使用して、変更する必要があるものを変更し、変更する必要のないものはそのままにしました(私は何を言いましたか)。

幸運を。

于 2012-07-09T04:44:32.927 に答える
0

これは、ドロップダウンオプション値の選択に応じて3つのテキストボックスを含むフォームセットを表示せず、各フォームに添付された「ボタンの生成」と呼ばれるボタンをクリックすると、入力セットごとに一意の値を生成する完全なソリューションです。

コードビンでこのソリューションを試してください: http://codebins.com/codes/home/4ldqpb7

于 2012-07-09T10:48:12.017 に答える