Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.09.2013, 19:16
Профессор
Отправить личное сообщение для djonA Посмотреть профиль Найти все сообщения от djonA
 
Регистрация: 02.05.2012
Сообщений: 197

идентифицировать select в форме
Есть form с произвольным числом select и одинаковыми значениями input

Мне надо если хотя бы в 1 одном select'e значение input value = 0 не субмитнуть форму.

<form>
<select class="class">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>

</select>

<select class="class">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>

</select>

и так произвольное число select

<input type="submit">
</form>


если хотя бы в 1 select value=0 форму не субмитнуть


для 1 делал так:
function test ()
	{
	   
		var txt = document.getElementById('').value;
	    
 if(txt == '0')
	    {
	        alert('test');
	        return false;
	    }		
	    return true;
	}


Но если много select'ов как сделать?
Ответить с цитированием
  #2 (permalink)  
Старый 18.09.2013, 19:39
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

Сообщение от djonA
если много select'ов как сделать?
Как вариант, использовать

document.getElementsByTagName('select');

Далее в цикле...
Ответить с цитированием
  #3 (permalink)  
Старый 18.09.2013, 19:57
Профессор
Отправить личное сообщение для djonA Посмотреть профиль Найти все сообщения от djonA
 
Регистрация: 02.05.2012
Сообщений: 197

<form onsubmit="return test ();">
<select class="class">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>

</select>

<select class="class">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>

</select>


<input type="submit">
</form>

<script>
function test ()
{

var txt = getElementsByTagName('select.class');

тут надо как то добавить цикл, но что то мозги не варят как

if(txt == '0')
{
alert('test');
return false;
}      
return true;
}
</script>
Ответить с цитированием
  #4 (permalink)  
Старый 18.09.2013, 20:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

djonA,
Сообщение от djonA
getElementsByTagName('select.class');
вы изобрели новый тег
Ответить с цитированием
  #5 (permalink)  
Старый 18.09.2013, 20:15
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от djonA
тут надо как то добавить цикл, но что то мозги не варят как
вспомни былое идентифицировать id
Ответить с цитированием
  #6 (permalink)  
Старый 18.09.2013, 21:36
Профессор
Отправить личное сообщение для djonA Посмотреть профиль Найти все сообщения от djonA
 
Регистрация: 02.05.2012
Сообщений: 197

<form onsubmit="return test ();">
<select class="class">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>

</select>

<select class="class">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>

</select>


<input type="submit">
</form>

<script>
function test ()
{

 for (var txt1 = document.querySelectorAll("select.class"), c = 0; o < a.length; o++);

тут вроде все ок  а дальше не получается
	    o.addEventListener("change", function (d) {
	    return function () {
	        txt1[d].value = this.value
	    }
	}(o), !1);

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

if(txt1 == '0')
{
alert('test');
return false;
}      
return true;
}
</script>
Ответить с цитированием
  #7 (permalink)  
Старый 18.09.2013, 22:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

djonA,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
<meta charset="utf-8">
<script>
function test() {
    for (var b = document.querySelectorAll("select.class"), a = 0; a < b.length; a++)
        if ("0" == b[a].value) return false;
    return true
};
</script>
</head>
<body>
<form onsubmit="return test();">
<select class="class">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>

</select>

<select class="class">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>

</select>


<input type="submit">
</form>
</body>
</html>
Ответить с цитированием
  #8 (permalink)  
Старый 18.09.2013, 22:27
Интересующийся
Отправить личное сообщение для unl0k Посмотреть профиль Найти все сообщения от unl0k
 
Регистрация: 02.06.2013
Сообщений: 12

Меня опередили), но я тоже набросал на скорую руку.

<script type="text/javascript">
    function check(cls, num) {
        var items = document.getElementsByClassName(cls);
        for (var i = 0; i < items.length; i+=1){
            if (+items[i][items[i].options.selectedIndex].value === num) {
                return false;
            }
        }
        return true;
    }
</script>
<form>
    <select class="sel">
        <option value="0">0</option>
        <option value="1">1</option>
        <option value="2">2</option>
    </select>
    <select class="sel">
        <option value="0">0</option>
        <option value="1">1</option>
        <option value="2">2</option>
    </select>
    <input type="submit" onClick="return check('sel', 0)">
</form>

Последний раз редактировалось unl0k, 19.09.2013 в 00:01.
Ответить с цитированием
  #9 (permalink)  
Старый 18.09.2013, 22:30
Профессор
Отправить личное сообщение для djonA Посмотреть профиль Найти все сообщения от djonA
 
Регистрация: 02.05.2012
Сообщений: 197

Супер огромное спасибо пошел дальше грызть гранит науки
Ответить с цитированием
  #10 (permalink)  
Старый 18.09.2013, 22:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от unl0k
(+items[items[i].options.selectedIndex].value
лихо закручено
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
SQL запрос. Как делать SELECT с условием SELECT Duda.Ml1986@gmail.com Серверные языки и технологии 16 13.01.2014 16:09
Метод для конвертирования едениц px, em, %, pt. jegit Элементы интерфейса 0 07.03.2013 16:15
выбор в select Александр141 Элементы интерфейса 4 03.11.2012 13:53
Как сохранить предыдущее значение select? MaxD Общие вопросы Javascript 3 21.07.2011 12:36
Проблема с динамическим формированием select elepsion jQuery 1 31.10.2010 14:31