2013-06-22 6 views
-2

Я новичок в javascript, так что это показалось действительно полезным форумом на эту тему. Я знаю только основные HTML и CSS.Как создать кнопку в javascript, которая дает (случайный) другой ответ каждый раз

Я хочу создать сценарий кнопки, который при нажатии на нее дает вам другой ответ при каждом нажатии на него. Я знаю, как сделать базовую кнопку, которая заставляет текст появляться на экране, но я не знаю, как его скриптировать, чтобы каждый раз давать произвольный ответ.

Конкретно: Я принимаю 20 различных ответов, каждый из которых имеет равный/неравный процент отображения на вашем экране.

Спасибо.

+0

У вас есть ответы, хранящиеся в базе данных или в скрипте? – Sergio

+0

А как насчет вопросов? – sinisake

+0

вам нужен массив ответов posibles. – jycr753

ответ

3

В JavaScript вы можете сгенерировать случайное число между 0 и 19

$("#myButton").click(function(){ 
    var index = Math.floor(Math.random()*19); 
    var randomAnswer = allAnswers[index]; 
    //display answer 
}); 

И использовать его индексировать массив из 20 элементов

+0

Умный и 19 потому что эта функция также может «произвести» результат 0 - 19 beying 0 первой позиции в массиве. (+1) – Sergio

+0

Спасибо, TGH, но я не уверен, как его выполнить. –

+0

Обновление: Исправлена ​​ошибка при вычислении индекса – TGH

0

Это делает его 10: http://jsfiddle.net/balintbako/bx8sZ/

Небольшой HTML:

<div id="main"> 
    <button id="rnd">Random</button> 
</div> 

JS (с использованием jQuery):

var answers = ["a1", "a2","a3","a4","a5","a6","a7","a8","a8","a10"]; 
$("#rnd").click(function(){ 
    alert(answers[Math.floor((Math.random()*10))]);  
}); 
1

Вот начало в Javascript:

var array=["Item1", "Item2", "Item3", "Item4", "Item5"]; 
var random = array[Math.floor(Math.random() * array.length)]; 
console.log(random); 

Таким образом, мы создали array элементов, и выбрать случайный элемент в этом массиве и отобразить его с помощью console.log. Что вам нужно сделать, это bind это к button мыши и добавьте переменную random к div, span и т.д.

Вот что вам понадобится:

JSFiddle Demo

HTML:

<h1>Will be replaced</h1> 
<button id="button">Click Me!</button> 

jQuery:

$(document).ready(function() { 

    var array=["Item1", "Item2", "Item3", "Item4", "Item5"]; 
    $('#button').bind('click', function() { 

     var random = array[Math.floor(Math.random() * array.length)]; 
     $("h1").html(random); 
    }); 
}); 
+0

Спасибо, это очень быстрое и полезное общение! –