samedi 16 avril 2022

Assigns the value of each td in the table with a random unique number with Javascript

I have a function that can generate a unique random number, the result is stored in an array. my question. How can each number be entered in rows td when there is a click event.

function random(max, min) {
        arr = [];
        for (i = 0; i < max; i++) {
            x = Math.floor(Math.random() * max) + min;
            if (arr.includes(x) == true) {
                i = i - 1;
            } else {
                if (x > max == false) {
                    arr.push(x);
                }
            }
        }
        return arr;

    }

For example, I have a table that has 3 rows

<button class="btn btn-md btn-danger" id="shuffle">Loop</button>
    <table class="table">
        <thead>
            <tr>
                <th scope="col">#</th>
                <th scope="col">First</th>
                <th scope="col">Last</th>
                <th scope="col">Number</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <th scope="row">1</th>
                <td>Mark</td>
                <td>Otto</td>
                <td name="random"></td>
            </tr>
            <tr>
                <th scope="row">2</th>
                <td>Jacob</td>
                <td>Thornton</td>
                <td name="random"></td>
            </tr>
            <tr>
                <th scope="row">3</th>
                <td>Larry</td>
                <td>the Bird</td>
                <td name="random"></td>
            </tr>
        </tbody>
    </table>

And trigger code

$('#shuffle').on('click', function(e) {
        var td = $('td[name="random"]');
        td.each((key, value) => {
            value.value = random(3, 1); // this's just example
        });

    });



Aucun commentaire:

Enregistrer un commentaire