Javascript.RU

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

Проблемы в форме с checkbox, что делать? )
У нас есть форма, в которой нужно ввести имя, отметить пол и внести эти данные в список с пометкой пола (м) или (ж). Также можно удалять из списка.
У нас чикбоксы не работают, помогите пожалуйста исправить http://fotki.yandex.ru/users/rusakov.../739309?page=0
<HTML>
	<HEAD>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
		<TITLE>Добавление и удаление элементов из списков</TITLE>
	<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
		<script type="text/javascript">

		function focusElement() {
			var elem = document.forms[0].myInput;
			elem.focus();
		}
		function addList(){
			valid = true;
			document.forms[0].myInput.focus()
			var list1 = document.getElementsByTagName('select')[0];
			var li   = document.createElement('option');
			var chek_m = document.getElementsByTagName ;
/*Запрещение ввода пустой строки */
			if (document.forms[0].myInput.value<1)
			return valid;
/* Ввод в список из текстового поля */
			li.innerHTML =document.forms[0].myInput.value
/* Очистка текстового поля */
			document.forms[0].myInput.value=""
			list1.appendChild(li);} 
		</script>
	</HEAD>
	<BODY onload='focusElement()'>
		<form name="form1">
		<br /><b>Введите имя</b><br />
		<input name="myInput" value= "" size="42"> <br /><br />
		<input type="checkbox" name="checkbox" id="chek_m"> men <br>
		<input type="checkbox" name="checkbox" id="chek_w"> women <br>
		<input onclick='addList()' type='button'
		value='Добавить'><br />
		<input type=button value='Удалить'
		onClick="for(i=0;i<form.elements[3].length;i++)
		if(form.elements[3].options[i].selected==true)
		form.elements[3].options[i] = null;"><br /><br />
		<b>Список<br /><br />
		<select size="5" multiple id="list1"></<select>
		</form>
	</BODY>
</HTML>
Ответить с цитированием
  #2 (permalink)  
Старый 08.05.2013, 15:17
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

что вы понимаете под не работают? они активны
<HTML>
	<HEAD>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
		<TITLE>Добавление и удаление элементов из списков</TITLE>
	<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
		<script type="text/javascript">

		function focusElement() {
			var elem = document.forms[0].myInput;
			elem.focus();
		}
		function addList(){
			valid = true;
			document.forms[0].myInput.focus()
			var list1 = document.getElementsByTagName('select')[0];
			var li   = document.createElement('option');
			var chek_m = document.getElementsByTagName ;
/*Запрещение ввода пустой строки */
			if (document.forms[0].myInput.value<1)
			return valid;
/* Ввод в список из текстового поля */
			li.innerHTML =document.forms[0].myInput.value
/* Очистка текстового поля */
			document.forms[0].myInput.value=""
			list1.appendChild(li);} 
		</script>
	</HEAD>
	<BODY onload='focusElement()'>
		<form name="form1">
		<br /><b>Введите имя</b><br />
		<input name="myInput" value= "" size="42"> <br /><br />
		<input type="checkbox" name="checkbox" id="chek_m"> men <br>
		<input type="checkbox" name="checkbox" id="chek_w"> women <br>
		<input onclick='addList()' type='button'
		value='Добавить'><br />
		<input type=button value='Удалить'
		onClick="for(i=0;i<form.elements[3].length;i++)
		if(form.elements[3].options[i].selected==true)
		form.elements[3].options[i] = null;"><br /><br />
		<b>Список<br /><br />
		<select size="5" multiple id="list1"></<select>
		</form>
	</BODY>
</HTML>
Ответить с цитированием
  #3 (permalink)  
Старый 08.05.2013, 15:23
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от Rusakova
У нас чикбоксы не работают
Определение взаимоисключающих значение не делают чекбоксами... Человек не может иметь оба пола сразу.

Для этого используют радиобаттоны или селект...
Ответить с цитированием
  #4 (permalink)  
Старый 08.05.2013, 15:26
Новичок на форуме
Отправить личное сообщение для Rusakova Посмотреть профиль Найти все сообщения от Rusakova
 
Регистрация: 08.05.2013
Сообщений: 8

так надо чтобы к вносимому имени приписывался пол ... Надо через чик бокс, препод сказал (
Ответить с цитированием
  #5 (permalink)  
Старый 08.05.2013, 15:36
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

разбейте нос вашему преподу))) и скажите что так не делают))

а если серьезно, то вешайте на checkbox событие onchange и если один чек бокс активный, то второй делаем не активным
Ответить с цитированием
  #6 (permalink)  
Старый 08.05.2013, 15:38
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

для начала его вобще нужно хоть как то обработать http://codepen.io/anon/pen/qicda
дальше можете активностями рулить
Ответить с цитированием
  #7 (permalink)  
Старый 08.05.2013, 15:40
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

как то так:

<input type="checkbox" name="checkbox" id="chek_m" onchange="if (this.checked) document.getElementById('chek_w').checked = false;"> men <br>
<input type="checkbox" name="checkbox" id="chek_w" onchange="if (this.checked) document.getElementById('chek_m').checked = false;"> women <br>
Ответить с цитированием
  #8 (permalink)  
Старый 08.05.2013, 15:48
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

.......
if (document.forms[0].myInput.value<1)
			return valid;
/* Ввод в список из текстового поля */

			var j = document.getElementById('chek_w').checked;
			var m = document.getElementById('chek_m').checked;
			if (!(m || j))
				{
				alert('выберите пол!');
				return;
				}
			
			li.innerHTML = (m ? 'мужик, епта.' : 'бабенция.') + ' ' + document.forms[0].myInput.value;
/* Очистка текстового поля */

.....
Ответить с цитированием
  #9 (permalink)  
Старый 08.05.2013, 15:50
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

ага, тернарный оператор здесь самое понятное решение)
Ответить с цитированием
  #10 (permalink)  
Старый 08.05.2013, 19:18
Новичок на форуме
Отправить личное сообщение для Rusakova Посмотреть профиль Найти все сообщения от Rusakova
 
Регистрация: 08.05.2013
Сообщений: 8

спасибо всем кто откликнулся ) все попробуем!
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Открытие div блока при первом визите на сайт Nushaba Общие вопросы Javascript 28 20.12.2013 21:24
Некоторые клавиши возвращают одинаковый код: что делать? Cooskon Events/DOM/Window 2 20.10.2010 11:20
скрипт не считает , что делать ? serpos Общие вопросы Javascript 2 16.06.2010 23:29
Выдает ошибку. Что делать? octavian Общие вопросы Javascript 1 20.02.2010 12:13
Браузер доказывает что не видит функцию SleepWalker Общие вопросы Javascript 7 17.06.2009 23:14