2013-08-05 2 views
-7

Вот мой код, и я пытаюсь сделать кнопку, которая делает случайные кнопки, но я не могу правильно подключить код.Как подключить функцию, createElement и random?

 

p id="demo">Click the button to display a random number. /p> 

button onclick="myFunction()">Try it  /button> 

script type="text/javascript"> 


    function myFunction(){ 
     var num = 5; 
     document.getElementById("demo").innerHTML=Math.floor(Math.random()*num) 

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

     var c = num + box; 
     return c; 
    } 

Может ли кто-нибудь мне помочь?

+0

что вы хотите его непонятно. –

+2

Ваша текущая функция выводит случайное число в элемент '# demo', добавляет пустой элемент'

+0

У меня есть кнопка и время, когда я ее помещаю, это сделает случайный из 5 ящиков, но мой код генерирует случайное число и новую коробку когда-либо. но я пытаюсь сделать случайную ячейку с лимитом 5 –

ответ

0

В соответствии с моим пониманием вы пытаетесь создать «n 'no.of случайных кнопок от 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) Нет отображения чисел, так удалить innerHTML из #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

Надеется, что вы получили некоторое представление.

+0

У меня есть кнопка и когда-либо, я ставлю ее, она сделает случайный из 5 ящиков, но мой код только генерирует случайное число и новую коробку когда-либо, когда я ее кладу. но я пытаюсь сделать случайную ячейку с лимитом 5 –

+0

@ SørenPhithak Это похоже на http://jsfiddle.net/hcgFS/2/ – Praveen

+0

Спасибо за помощь сейчас iam ближе, если хотите, я пытаюсь это сделать, но как я могу удалить номер, который также отображается, и как я его перезагружаю, чтобы он не продолжался? –

Смежные вопросы