Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> подскажите как рандомно выводить текст?? 
:(
    Опции темы
stan90
Дата 4.12.2009, 17:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 12.11.2009

Репутация: нет
Всего: нет



скажите пожалуйста,как сделать чтоб при нажатии кнопки, одновременно в двух полях менялся рандомно какай-нибудь текст??
PM MAIL   Вверх
Itsys
Дата 5.12.2009, 10:57 (ссылка) |  (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1338
Регистрация: 21.1.2008
Где: г. Москва

Репутация: 12
Всего: 34



Что значит рандомно менялся текст? Это так: был "гайка" а стал "длФВРВЫаьитс"?
PM MAIL WWW Skype   Вверх
stan90
Дата 5.12.2009, 13:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 12.11.2009

Репутация: нет
Всего: нет



нет)) 
это значит,что есть каккой то набор слов,и допустим в одном поле было слово гайка а в другом шуруп и при нажатии на кнопку они менялись на любые другие слова из набора
PM MAIL   Вверх
Itsys
Дата 5.12.2009, 23:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1338
Регистрация: 21.1.2008
Где: г. Москва

Репутация: 12
Всего: 34



И в чем проблема? Где неработающий скрипт? Или Вы хотите, чтобы Вам простейший скрипт написал кто-то другой?

Теоретически: создаете массив слов, далее используя функцию Math.random(), умножаете результат на длину массива, уменьшенную на единицу, округляете и получаете индекс случайно выбранного элемента массива. Получаете поле по id и меняете value на полученный по индексу элемент массива.
PM MAIL WWW Skype   Вверх
stan90
Дата 6.12.2009, 01:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 12.11.2009

Репутация: нет
Всего: нет



вот я попробовал сделать..но если честно какая то ерунда получилась...скажите что не так

Код

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Документ без названия</title>
<body>
<script language="JavaScript" type="text/javascript">
var h=(Math.random()*3);
function f(){
 if (h <1){ document.getElementById('a').value='X|X';document.getElementById('b').value='X<=>X';}
 if (h > 1 && h < 2) document.getElementById('a').value='X<=>X';
 if (h > 2 && h < 3) document.getElementById('a').value='X&X';}

</script>
<form>
<input name="" id="a" type="text"/>
<input name="" id="b" type="text" />
<label>
<input type="submit" name="button" id="button" value="ok" onclick="f()" />
</label>
</form>
</head>


</body>
</html>


PM MAIL   Вверх
EmilRegis
Дата 6.12.2009, 10:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 306
Регистрация: 21.9.2007

Репутация: 1
Всего: 4



уберите тег <form> и input сделайте обычной кнопкой, а не сабмитом...
далее, если у вас будет больше 3 элементов, то каждый ифом проверять будете?)) 
PM MAIL   Вверх
stan90
Дата 6.12.2009, 11:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 12.11.2009

Репутация: нет
Всего: нет



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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Документ без названия</title>
<body>
<script language="JavaScript" type="text/javascript">
var h=(Math.random()*3);
function f(){
 if (h <1){ document.getElementById('a').value='X|X';document.getElementById('b').value='X<=>X';}
 if (h > 1 && h < 2) document.getElementById('a').value='X<=>X';
 if (h > 2 && h < 3) document.getElementById('a').value='X&X';}
</script>

<input  id="a" type="text"/>
<input  id="b" type="text" />
<label>
<input type="button" name="button" id="button" value="ok" onclick="f()" />
</label>

</head>
</body>
</html>


Это сообщение отредактировал(а) stan90 - 6.12.2009, 11:09
PM MAIL   Вверх
EmilRegis
Дата 6.12.2009, 11:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 306
Регистрация: 21.9.2007

Репутация: 1
Всего: 4



ничего не меняется потому что в функции f() проверяется значение h, которое при вызове функции не меняется...чтобы менялось, надо в функцию засунуть  h=(Math.random()*3);
а чтобы не для 3 элементов, а для произвольного количества, надо создать массив, заполнить его словами и выбирать из него элемент под номером h
PM MAIL   Вверх
stan90
Дата 6.12.2009, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 12.11.2009

Репутация: нет
Всего: нет



вот сделал вот так..а как теперь сделать чтобы в этих двух полях разные надписи были??.а то во втором выводиться то же самое что и в первом
как это исправить?
Код

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Документ без названия</title>
<body>
<script language="JavaScript" type="text/javascript">

function f(){
var ad=new Array()
ad[0]='Text 1';
ad[1]='Text 2';
ad[2]='Text 3';
ad[3]='Text 4';
ad[4]='Text 5';
ad[5]='Text 6';
ad[6]='Text 7';
ad[7]='Text 8';
ad[8]='Text 9';
ad[9]='Text 10';
var xy=Math.floor(Math.random()*ad.length);
document.getElementById('a').value=(ad[xy]);
document.getElementById('b').value=(ad[xy]);
}
</script>

<input  id="a" type="text"/>
<input  id="b" type="text" />
<label>
<input type="button" name="button" id="button" value="ok" onclick="f()" />
</label>

</head>
</body>
</html>


Это сообщение отредактировал(а) stan90 - 6.12.2009, 16:33
PM MAIL   Вверх
Itsys
Дата 6.12.2009, 18:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1338
Регистрация: 21.1.2008
Где: г. Москва

Репутация: 12
Всего: 34



надо перед изменением второго поля тоже вызвать метод random, чтобы получить еще один индекс
PM MAIL WWW Skype   Вверх
stan90
Дата 6.12.2009, 19:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 12.11.2009

Репутация: нет
Всего: нет



всё получилось спасибо
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0480 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.