Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.11.2015, 18:05
Новичок на форуме
Отправить личное сообщение для outlaw1313 Посмотреть профиль Найти все сообщения от outlaw1313
 
Регистрация: 28.11.2015
Сообщений: 2

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

<script>
var form5 = document.getElementById('name').value;

function idlolka3(name) {
switch (name) {
  case 1:
    document.getElementById('block1').style.display = 'inline-block'
	document.getElementById('block2').style.display = 'none'
	document.getElementById('block3').style.display = 'none'
    break;
  case 2:
    document.getElementById('block1').style.display = 'none'
	document.getElementById('block2').style.display = 'inline-block'
	document.getElementById('block3').style.display = 'none'
    break;
  case 3:
    document.getElementById('block1').style.display = 'none'
	document.getElementById('block2').style.display = 'none'
	document.getElementById('block3').style.display = 'inline-block'
    break;
  default:
    alert( 'Такого блока нет' );
}
}
</script>

<form onsubmit="javascript:idlolka3(document.getElementById('name').value=='')" method="post">
   <p><select size="1" id="name" name="hero">
    <option disabled>Выберите:</option>
    <option selected value="1">Блок 1</option>
    <option value="2">Блок 2</option>
    <option value="3">Блок 3</option>
    <option value="4">Блок 4</option>
   </select> - <input type="submit" value="Отправить"></p>
  </form>
<a href="javascript:idlolka3(3)">Смелей</a>

<div id="block1" class="block">Заголовок 1</div>
<div id="block2" class="block">Заголовок 2</div>
<div id="block3" class="block">Заголовок 3</div>


Скрипт должен при выбранном в списке блока показывать его, а остальные скрывать. Через кнопку "Смелей" работает. Через форму значение не передает. От сюда вопрос: "Где я ошибся?"

На будущее: как можно оптимизировать скрипт, чтобы он, например, брал нужное число, подставлял в конец id блока для его поиска и САМОЕ ГЛАВНОЕ - остальные скрывал? Есть идея есть это через подстановку block + "параметр", но до такого мне, как до Китая. Что касается исключения, то можно организовать применение правила для всех из диапазона, кроме активного, опять же, мне пока далеко до этого.

Последний раз редактировалось outlaw1313, 28.11.2015 в 18:39.
Ответить с цитированием
  #2 (permalink)  
Старый 28.11.2015, 19:06
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

<form onsubmit="idlolka3(parseInt(document.getElementById('name').value));return false;" method="post">
Ответить с цитированием
  #3 (permalink)  
Старый 29.11.2015, 00:39
Новичок на форуме
Отправить личное сообщение для outlaw1313 Посмотреть профиль Найти все сообщения от outlaw1313
 
Регистрация: 28.11.2015
Сообщений: 2

parseInt - видимо я до этого еще не дошел. Благодарю. Осталось оптимизировать.
Ответить с цитированием
  #4 (permalink)  
Старый 29.11.2015, 17:17
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от Malleys
document.getElementById('name').value
this.hero.value
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Установка дефолтных значений формы deonis Angular.js 4 03.08.2015 09:06
Нестабильно срабатывает вывод значений с формы NeVirus Элементы интерфейса 8 20.02.2013 09:34
Умножение численных значений формы ввода FastSP Общие вопросы Javascript 8 08.04.2012 20:45
Cчётчик значений value в элементе формы input type="text"? Surlik jQuery 8 04.04.2012 04:49
Очистка формы от дефолтных значений js hereim Общие вопросы Javascript 14 04.07.2010 21:29