-8

これが私のコードです。ランダムなボタンを作成するボタンを作成しようとしていますが、コードを正しく接続できません。

p id="demo">ボタンをクリックすると、乱数が表示されます。/p>

button onclick="myFunction()">試してみる /button>

スクリプト タイプ="text/javascript">


    関数 myFunction(){
        変数番号 = 5;
        document.getElementById("demo").innerHTML=Math.floor(Math.random()*num)

        var box=document.createElement("BUTTON");
        document.body.appendChild(ボックス);

        var c = 数値 + ボックス;
        cを返します。
    }

誰でも私を助けてもらえますか?

4

1 に答える 1

0

私の理解によると、あなたは of の時点で「n」個のランダムなボタンを作成しようとしてます。innerHTML#demo

もしそうなら、あなたはそれをループする必要があります。これを試して

function myFunction() {
    var num = 5;
    document.getElementById("demo").innerHTML = Math.floor(Math.random() * num)
    var noOfButtons = document.getElementById("demo").innerHTML;
    for (var i = 0; i < noOfButtons; i++) {
        var box = document.createElement("BUTTON");
        document.body.appendChild(box);
    }
}

JSフィドル

あなたのコメントから:

1) 数字が表示されないので、 of要素を削除しinnerHTML#demoます。

2) ボタン呼び出しごとにボタン数をリセットします。

クリックイベントを呼び出すたびに、以下のように値を空にリセットすることをお勧めします

document.getElementById('demo').innerHTML = '';

3)以下のように、body の代わりに子 ( ) を要素に追加する必要があります。box#demo

document.getElementById('demo').appendChild(box);

最後に、コードは次のようになります。

function myFunction() {
    document.getElementById('demo').innerHTML = '';
    var num = 5;
    var noOfButtons = Math.floor(Math.random() * num);
    console.log(noOfButtons);
    for (var i = 0; i < noOfButtons; i++) {
        var box = document.createElement("BUTTON");
        document.getElementById('demo').appendChild(box);
    }
}

Updated JSFiddle

あなたがいくつかのアイデアを持っていることを願っています。

于 2013-08-05T12:26:13.913 に答える