Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |

09.12.2009, 17:39
|
|
Участник форума
Регистрация: 04.06.2009
Сообщений: 176
Провел на форуме: 840493
Репутация:
0
|
|
Выпадающие списки
Здравствуйте. Есть необходимость сделать на сайте с помощью js выпадающие списки. Допустим в первом выпадающем списке человек из вариантов тест1, тест2, тест3 выбирает тест2 появляется еще один выпадающий список. как можно подобное реализовать? какие у кого идеи? Помогите пожалуйста 
|
|
|

09.12.2009, 19:44
|
|
Постоянный
Регистрация: 27.07.2008
Сообщений: 614
Провел на форуме: 4532332
Репутация:
1196
|
|
http://webdesign.site3k.net/?/conjuncture/append/d/menudrop.html
|
|
|

10.12.2009, 06:32
|
|
Участник форума
Регистрация: 04.06.2009
Сообщений: 176
Провел на форуме: 840493
Репутация:
0
|
|
решил делать вот так:
Код:
<html>
<head>
<script>
function dis(a, b) {
a.form.elements[b].disabled = (a.value != 1);
}
</script>
</head>
<body>
<form name="form1">
<select name="sel1" onchange="dis(this, 'sel2')">
<option value="1">1
<option value="2">2
<option value="3">3
</select>
<select name="sel2">
<option value="1">1
<option value="2">2
<option value="3">3
</select>
</form>
</body>
</html>
но есть еще одна функция:
Код:
function validate (elem)
{
var text = elem.value;
var result = "";
for ( var i = 0; i < text.length; i++ )
if ( text.charAt (i) >= "0" && text.charAt (i) <= "9" ) result += text.charAt (i);
elem.value = result;
}
function imgOpen (n)
{
document.getElementById ("img").src = "http://site.com/1/" + n.toString() + ".jpg";
document.getElementById ("img_block").style.display = "block";
}
которая выводит изображения вот так:
Код:
<input type="text" id="img_n" onkeyup="validate (this);" onblur="validate (this);" onchange="validate (this);" />
<input type="button" onclick="imgOpen(document.getElementById ('img_n').value);" value="Показать!" />
и собственно вопрос как сделать чтобы например если в первом селекте выбрано значение 1 то селект2 становится доступным, и если допустим в селект2 выбрано значение 1 то ссылка http://site.com/1/ если выбрано значение 2 то ссылка становится http://site.com/2/ ??? Что то никак понять не могу 
|
|
|

10.12.2009, 10:22
|
|
Постоянный
Регистрация: 07.03.2009
Сообщений: 357
Провел на форуме: 1284900
Репутация:
399
|
|
Сообщение от SultanOFF
и собственно вопрос как сделать чтобы например если в первом селекте выбрано значение 1 то селект2 становится доступным
Ну это как я понял вы уже сделали.
Хотя можно сделать это не через [B]elements .disabled, а просто через display='none'
Сообщение от SultanOFF
, и если допустим в селект2 выбрано значение 1 то ссылка http://site.com/1/ если выбрано значение 2 то ссылка становится http://site.com/2/ ??? Что то никак понять не могу 
Ну а почему нельзя просто использовать глобальную переменную?
Код:
<script>
var imgDir=0;
//далее функция которая заносит то что выбрали во втором селекте в переменную imgDir
//ну и изменяем фенкцию imgOpen
function imgOpen (n)
{
document.getElementById ("img").src = "http://site.com/"+ imgDir.toString() +"/" + n.toString() + ".jpg";
document.getElementById ("img_block").style.display = "block";
}
</script>
|
|
|

10.12.2009, 13:51
|
|
Участник форума
Регистрация: 04.06.2009
Сообщений: 176
Провел на форуме: 840493
Репутация:
0
|
|
//далее функция которая заносит то что выбрали во втором селекте в переменную imgDir
пожалуйста можете привести пример данной функции 
|
|
|

10.12.2009, 14:49
|
|
Постоянный
Регистрация: 07.03.2009
Сообщений: 357
Провел на форуме: 1284900
Репутация:
399
|
|
Код:
<html>
<head>
<script>
var imgDir=1;//даём 1-е значение из списка, т.к. ф-ия setPath у нас вызывается только при изменении
function dis(a, b) {
a.form.elements[b].disabled = (a.value != 1);
}
function setPath(value) {
imgDir=value;
alert(imgDir);
}
</script>
</head>
<body>
<form name="form1">
<select name="sel1" onchange="dis(this, 'sel2')">
<option value="1">1
<option value="2">2
<option value="3">3
</select>
<select name="sel2" onchange="setPath(value)">
<option value="1">1
<option value="2">2
<option value="3">3
</select>
</form>
</body>
</html>
Последний раз редактировалось Gray_Wolf; 10.12.2009 в 15:49..
|
|
|

10.12.2009, 16:15
|
|
Участник форума
Регистрация: 04.06.2009
Сообщений: 176
Провел на форуме: 840493
Репутация:
0
|
|
спасибо огромное Gray_Wolf Вы Мне очень помогли 
|
|
|

10.12.2009, 16:30
|
|
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
Провел на форуме: 1698585
Репутация:
818
|
|
Выпадающие с писки
http://anton.shevchuk.name/wp-demo/jquery-tutorials/accordion1.html
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|