-8

这是我的代码,我正在尝试制作一个制作随机按钮的按钮,但我无法正确连接代码。

p id="demo">点击按钮显示随机数。/p>

button onclick="myFunction()">试试 /button>

脚本类型="文本/javascript">


    函数我的函数(){
        变量数 = 5;
        document.getElementById("demo").innerHTML=Math.floor(Math.random()*num)

        var box=document.createElement("BUTTON");
        document.body.appendChild(box);

        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);
    }
}

JSfiddle

从您的评论中:

1) 不显示数字,所以去掉innerHTMLof#demo元素

2) 重置每个按钮调用的按钮计数。

每当您调用点击事件时,最好将值重置为空,如下所示

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

3)您需要将子 ( 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 回答