Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.04.2011, 13:02   #1
krym2904
Пользователь
 
Регистрация: 20.04.2011
Сообщений: 15
По умолчанию Javascript на футбольный сайт

Доброго времени суток! Прошу помощи у людей, шарящих в Javascripte помощи.
Я делаю скрипт ввода данных матча и мне нужно, чтобы при вводе количества мячей, забитых командами, появлялись поля внизу для ввода бомбардира. Насколько я понимаю, здесь должно быть условие, какое и куда его ставить и как оно должно выглядеть, понять не могу.

Если это возможно, то подскажите...

Ну если бы еще я мог при выборе команды и введении количестве голов, отображалось поле выбора игрока из этого клуба (а не его ввода), то ввобще идеально.

Заранее спасибо.
krym2904 вне форума Ответить с цитированием
Старый 20.04.2011, 15:48   #2
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

А в чём проблема собственно? Где ваш код?
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Старый 20.04.2011, 16:11   #3
krym2904
Пользователь
 
Регистрация: 20.04.2011
Сообщений: 15
По умолчанию

Код:
<script>
function gen()
{
 team1 = document.getElementById("team1").value;
 team2 = document.getElementById("team2").value;
 goals1 = document.getElementById("goals1").value; 
 goals2 = document.getElementById("goals2").value; 
 bomb1 = document.getElementById("bomb1").value; 
 bomb2 = document.getElementById("bomb2").value; 
 comment = document.getElementById("comment").value;
 result = ""+team1+" "+goals1+" - "+goals2+" "+team2+"<br><br>"+bomb1+" - "+bomb2+"<br><br>Комментарий к матчу:"+comment+"";
 document.getElementById("result").innerHTML = result;
}
</script>



<div align="center"><select id="team1">
<option>ManU</option>
<option>Ars</option>
.....................
</select>
<select id="goals1">
 <option>0</option>
 <option>1</option>
 <option>2</option>
 <option>3</option>
 <option>4</option>
 <option>5</option>
 <option>6</option>
 <option>7</option>
 <option>8</option>
 <option>9</option>
 <option>10</option>
 <option>11</option>
 <option>12</option>
 <option>13</option>
 <option>14</option>
 <option>15</option>
 <option>16</option>
 <option>17</option>
</select>
<select id="goals2">
 <option>0</option>
 <option>1</option>
 <option>2</option>
 <option>3</option>
 <option>4</option>
 <option>5</option>
 <option>6</option>
 <option>7</option>
 <option>8</option>
 <option>9</option>
 <option>10</option>
 <option>11</option>
 <option>12</option>
 <option>13</option>
 <option>14</option>
 <option>15</option>
 <option>16</option>
 <option>17</option>
</select>
<select id="team2">
<option>ManU</option>
<option>Ars</option>
.....................
</select><br><br>
<input id="bomb1">-<input id="bomb2">
</div>

<textarea id="comment">
</textarea>

<input type="button" value="Сгенерировать" onclick="gen();">

<div align="center" id="result"></div>
krym2904 вне форума Ответить с цитированием
Старый 20.04.2011, 19:41   #4
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Фреймворк javascript не используете по какой-то определённой причине? Предрассудки? С jquery, например, всё это организовать было бы гораздо легче.

На каждый селект с голами нужно повесить событие onChange с функцией, например, gen_bomb_fields(this, 1)

Код:
function gen_bomb_fields(obj, team)
{
var goals = obj.value;
var bomb_list = document.getElementById('team_'+team+'_bombardiers');
// чистим список бомбардиров
if (bomb_list.hasChildNodes())
{
while ( bomb_list.childNodes.length >= 1 )
{
bomb_list.removeChild( bomb_list.firstChild );
}
}
// добавляем новые поля
for (i=1;i<=goals;i++) {
var element = document.createElement('input');
element.type = 'text';
element.id = 'team_'+team+'_bomb_'+i;
bomb_list.appendChild(element);
}
}
В таком же духе можно сделать вместо input'ов селекты и добавить в них бомбардиров команд из предварительно сформированного массива или даже через ajax. Но это уже более сложная работа.
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Старый 20.04.2011, 21:41   #5
krym2904
Пользователь
 
Регистрация: 20.04.2011
Сообщений: 15
По умолчанию

Цитата:
Сообщение от Johnatan Посмотреть сообщение
Фреймворк javascript не используете по какой-то определённой причине? Предрассудки? С jquery, например, всё это организовать было бы гораздо легче.
Нет у меня никаких предрассудков, просто только вчера я начал изучать понятия скрипт.
krym2904 вне форума Ответить с цитированием
Старый 27.08.2011, 11:05   #6
krym2904
Пользователь
 
Регистрация: 20.04.2011
Сообщений: 15
По умолчанию

Блин, сообразить не могу... Ну ладно, буду дальше пробывать
krym2904 вне форума Ответить с цитированием
Старый 27.08.2011, 11:07   #7
krym2904
Пользователь
 
Регистрация: 20.04.2011
Сообщений: 15
По умолчанию

Программисты, подскажите, пожалуйста, какую ошибку я совершил?

Код:
<script type="text/javascript">
function gen()
{
var name = document.getElementById("name").value;
result = "<img src="Мой сайт/players/"+name+".png">";
document.getElementById("result").innerHTML = result;
}
</script>

<table border="1" width="500" height="500" background="http://img-fotki.yandex.ru/get/23/soir007.3/0_a1f3_e8ac440e_XL"><tr><td>
<select id="name">
<option>A.Young</option>
<option>Aduriz</option>
<option>Aguero</option>
<option>Arshavin</option>
<option>Bale</option>
<option>Balotelli</option>
<option>Baptista</option>
<option>Barry</option>
<option>Berbatov</option>
<option>C.Ronaldo</option>
<option>Cambiasso</option>
<option>Crouch</option>
<option>D.Bent</option>
<option>Drogba</option>
<option>Duda</option>
<option>Dzeko</option>
<option>Falcao</option>
<option>Forlan</option>
<option>Gerrard</option>
<option>Godin</option>
<option>Huddlestone</option>
<option>J.Navas</option>
<option>Jo</option>
<option>Kanoute</option>
<option>Lampard</option>
<option>Marchena</option>
<option>Mata</option>
<option>Nani</option>
<option>Negredo</option>
<option>Perotti</option>
<option>Reyes</option>
<option>Rooney</option>
<option>Silva</option>
<option>Suarez</option>
<option>Terry</option>
<option>Tevez</option>
<option>Tiago</option>
<option>Torres</option>
<option>Turan</option>
<option>V.d.Vaart</option>
<option>Villa</option>

</select>
<input type="button" value="Сгенерировать" onclick="gen();">
<div align="center" id="result">
</tr></td></table></div></div>
krym2904 вне форума Ответить с цитированием
Старый 27.08.2011, 11:09   #8
krym2904
Пользователь
 
Регистрация: 20.04.2011
Сообщений: 15
По умолчанию

Должна отображаться картинка, она не отображается. Вообще можно ли както по-другому оформить, но чтоб смысл тот же был( чтоб при выборе из списка отображалась соответствующая фотка и само название элемента списка)
krym2904 вне форума Ответить с цитированием
Старый 27.08.2011, 11:10   #9
justmozg
Пользователь
 
Регистрация: 26.08.2011
Сообщений: 41
По умолчанию

Ну, во-первых, у тебя <div id="result"> не закрыт или закрыт не правильно, потому что после него никак не может идти </tr></td></table>.
justmozg вне форума Ответить с цитированием
Старый 27.08.2011, 11:13   #10
justmozg
Пользователь
 
Регистрация: 26.08.2011
Сообщений: 41
По умолчанию

Потом в фаербаге проверь, создается ли тег img.
В начале функции вызывай alert("test"); чтобы проверить вызывается ли функция вообще.
Потом попробуй вызывать alert(name);

Отлаживай.
justmozg вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создать футбольный онлайн-менеджер (браузер) Spart777 Фриланс 9 05.03.2016 22:25
Javascript - классы, они есть или их нету в Javascript? Kasper1 JavaScript, Ajax 3 05.03.2011 09:42
On-line футбольный менеджер jeka5555 Gamedev - cоздание игр: Unity, OpenGL, DirectX 4 28.07.2009 16:02