Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Вниз

Ява скрипт   Найти похожие ветки 

 
AlexDan ©   (2010-05-27 10:58) [0]

Я в ява вообще никак, может кто что подскажет.. задача очень простая, есть html страничка, на ней выбор-падающее меню- <select name=.., есть ещё два edita <input name=.. Т.е. меню - выбор- деталь 1, input - её длина, второй input - её масса, соответственно деталь 2, значения в input сменяются, насколько я понимаю через ява скрипт удобнее всего, т.к. нужно чтоб страница не обнавлялась.. может кто видел где что-то такое уже реализованно, хоть посмотреть..


 
12 ©   (2010-05-27 11:09) [1]

Вот по примеру сделать можно
Тут два combobox, второй заполняеется в зависимости от первого
с эдитом не сложнее будет сделать

<script>
var ALL = Array("");
var Lamb = Array("Атюрьевский РТУ","Ельниковский РТУ","Ичалковский РТУ","Краснослободский РТУ","Лямбирский ЛТЦ","Ромодановский РТУ","Старошайговский РТУ","Темниковский РТУ","Теньгушевский РТУ");
var Ruza = Array("Зубовополянский РТУ","Инсарский РТУ","Ковылкинский РТУ","Рузавский ЛТЦ","Торбеевский РТУ");
var Cham = Array("Ардатовский РТУ","Атяшевский РТУ","Большеберезниковский РТУ","Большеигнатовский РТУ","Дубёнский РТУ","Кочкуровский РТУ","Чамзинский ЛТЦ");
var CIT = Array();
var TCT = Array("УСПД","ЛУ№3","Станционный цех","Линейный цех","ЦПД");
function showNames(v){
var mas = eval(v);
var el = document.getElementById("names");
while(el.childNodes.length>0){
 el.removeChild(el.childNodes[el.childNodes.length-1]);}
 if (mas.length > 1) {
   el.style.display = "";
   for(var i=0;i<mas.length;i++){
   var opt = document.createElement("option");
   opt.innerHTML=mas[i];
   el.appendChild(opt);}
 }
 else {el.style.display = "none";}
}
</script>

<body onload="showNames("Lamb")">
<select id="level" onchange="showNames(this.value)">
<option value="Lamb">Лямбирьский МТУ</option>
<option value="Ruza">Рузаевский МТУ</option>
<option value="Cham">Чамзинский МТУ</option>
<option value="CIT">ЦИТ</option>
<option value="TCT">ТЦТ</option>
</select>
<br>
<select id="names">
</select>


 
Игорь Шевченко ©   (2010-05-27 11:29) [2]

ты когда-нибудь тему вопроса научишься оформлять ? Или это настолько непостижимая наука, что высшего образования не хватает ?


 
AlexDan ©   (2010-05-27 11:46) [3]

> Игорь Шевченко ©   (27.05.10 11:29) [2]
название - Как привязать ява скрпт к select в html страничке
вопрос - тоже самое, что в [0].
и что вообщем-то изменилось? главное-суть и итого.:).

> 12 ©   (27.05.10 11:09) [1]
вот что у меня получилось (основная идея конечно)
<script>
function showNames{

if (select.sten.value = 1) {
input.dlpol.value=5.95;
input.shpol.value=10;
}

if (select.sten.value = 2) {
input.dlpol.value=2.7;
input.shpol.value=14.7;
}

if (select.sten.value = 3) {
input.value.dlpol=2.5;
input.value.shpol=8;
}
}
</script>

<select name="sten" size="1" style="width: 87px" onchange="showNames">
<input name="dlpol" type="text" style="width: 70px; height:21" size="20" value="5.95" />
<input name="shpol" type="text" style="width: 70px; height:21" size="20" value="10"/>
Ошибок наверняка миллион, по причине [0], просьба поправить если чего нужно..


 
AlexDan ©   (2010-05-27 12:02) [4]

да, то что я написал совершенно не работает, может кто подскажет что там исправить..?


 
12 ©   (2010-05-27 12:13) [5]

да вот же, просто 1й элемент взять

<script>

var ALL = Array("");
var Lamb = Array("Атюрьевский РТУ","Ельниковский РТУ","Ичалковский РТУ","Краснослободский РТУ","Лямбирский ЛТЦ","Ромодановский РТУ","Старошайговский РТУ","Темниковский РТУ","Теньгушевский РТУ");
var Ruza = Array("Зубовополянский РТУ","Инсарский РТУ","Ковылкинский РТУ","Рузавский ЛТЦ","Торбеевский РТУ");
var Cham = Array("Ардатовский РТУ","Атяшевский РТУ","Большеберезниковский РТУ","Большеигнатовский РТУ","Дубёнский РТУ","Кочкуровский РТУ","Чамзинский ЛТЦ");
var CIT = Array();
var TCT = Array("УСПД","ЛУ№3","Станционный цех","Линейный цех","ЦПД");
function showNames(v){
var mas = eval(v);
var el = document.getElementById("names");
el.value = mas[1];

}
</script>

<body onload="showNames("Lamb")">
<select id="level" onchange="showNames(this.value)">
<option value="Lamb">Лямбирьский МТУ</option>
<option value="Ruza">Рузаевский МТУ</option>
<option value="Cham">Чамзинский МТУ</option>
<option value="CIT">ЦИТ</option>
<option value="TCT">ТЦТ</option>
</select>
<br>
<input id="names">
</select>


 
Игорь Шевченко ©   (2010-05-27 12:15) [6]


> и что вообщем-то изменилось?


Да собственно, ничего не изменилось.
В правилах написано:

"Корректно оформляйте заголовок ветки, который должен кратко отражать суть вопроса"

вот и следуй правилам. В следующий раз буду удалять не читая.


 
Palladin ©   (2010-05-27 12:16) [7]

http://tinyurl.com/2ve3q2a


 
makvell   (2010-05-27 12:16) [8]


<script>
   var lenArr = ["5", "10", 20];
   var mArr = ["123", "456", "789"];
   function selOnChange() {
       var selIndex = document.getElementById("mySelect").selectedIndex;
       document.getElementById("myLenInput").value = lenArr[selIndex];
       document.getElementById("myMasInput").value = mArr[selIndex];
   }
</script>


Порядок элементов в селекте должен соответствовать порядку элементов в массивах длин и масс. Можно по идам к ним обращаться, можно через form.input.name, тут как удобнее.


 
Плохиш ©   (2010-05-27 12:19) [9]


> Игорь Шевченко ©   (27.05.10 11:29) [2]

Ты его ещё попроси писать без ошибок :-))

> AlexDan ©   (27.05.10 11:46) [3]

T.e. [1] читать это не для крютых пацанов, а тебе код подавай для копи/паста? Тогда советую нанять программиста, даже можно студента.


 
12 ©   (2010-05-27 12:19) [10]


> Ошибок наверняка миллион, по причине [0], просьба поправить
> если чего нужно..

спросил..
сам Яву вторую неделю только смотрю
Проверь сам, в html загони и браузером открой.
Можно аддон к FF, по имени FireBug, поставить - он подробнее расскажет как именно на текущей странице натупили :)


 
Плохиш ©   (2010-05-27 12:22) [11]


> 12 ©   (27.05.10 12:19) [10]


> Проверь сам

Ты чё, а форум тогда на что? Тут должны любую галиматью оттестировать и корректный код дать.


 
makvell   (2010-05-27 12:24) [12]


> 12 ©   (27.05.10 12:19) [10]
> спросил..
> сам Яву вторую неделю только смотрю


Ээээ, насяльника. Не нужно путать яву и яваскрипт, это все таки не одно и тоже :)


 
AlexDan ©   (2010-05-27 12:31) [13]

> > AlexDan ©   (27.05.10 11:46) [3]
> T.e. [1] читать это не для крютых пацанов, а тебе код подавай
> для копи/паста? Тогда советую нанять программиста, даже
> можно студента.
нет, [3] это глубокий тюнинг из [1], когда пишу на форумах проверка орфографии отключается автоматически для высвобождения ресурсов интеллекта)..


 
makvell   (2010-05-27 12:34) [14]


> makvell   (27.05.10 12:16) [8]

Кстати, можно добавить еще в массивы первым элементом пустую строку, а в селекте первым элементов option с value="", тогда при выборе из списка будут чиститься и поля тоже, и при первом появлении все будет верно (т.е. нигде ничего не заполнено) :)


 
Плохиш ©   (2010-05-27 12:53) [15]


> нет, [3] это глубокий тюнинг из [1]

Перед тем как что-то "тюнинговать" надо минимум синтаксис используемого средства изучить.


 
aka   (2010-05-27 14:05) [16]


> AlexDan ©   (27.05.10 11:46) [3]
>
> > Игорь Шевченко ©   (27.05.10 11:29) [2]
> название - Как привязать ява скрпт к select в html страничке
> вопрос - тоже самое, что в [0].
> и что вообщем-то изменилось? главное-суть и итого.:).
>
> > 12 ©   (27.05.10 11:09) [1]
> вот что у меня получилось (основная идея конечно)
> <script>
> function showNames{
>
> if (select.sten.value = 1) {
> input.dlpol.value=5.95;
> input.shpol.value=10;
> }
>
> if (select.sten.value = 2) {
> input.dlpol.value=2.7;
> input.shpol.value=14.7;
> }
>
> if (select.sten.value = 3) {
> input.value.dlpol=2.5;
> input.value.shpol=8;
> }
> }
> </script>
>
> <select name="sten" size="1" style="width: 87px" onchange="showNames">
> <input name="dlpol" type="text" style="width: 70px; height:
> 21" size="20" value="5.95" />
> <input name="shpol" type="text" style="width: 70px; height:
> 21" size="20" value="10"/>
> Ошибок наверняка миллион, по причине [0], просьба поправить
> если чего нужно..
>


сделай так
function showNames(elem) {
 if (elem.value = 1) {
 
 var input1 = document.getElementById("dlpol");
 var input2 = document.getElementById("shpol");
 input1.value=5.95;
 input2.value=10;
 }
}

вызов  onchange="showNames(this)"
и наверное не if (elem.value = 1) { - это ведь присвоить! (==)


 
aka   (2010-05-27 14:07) [17]


>  var input1 = document.getElementById("dlpol");


только
<input id="dlpol" type="text" style="width: 70px; height:21" size="20" value="5.95" />
<input id="shpol" type="text" style="width: 70px; height:21" size="20" value="10"/>


 
AlexDan ©   (2010-05-27 14:38) [18]

> aka   (27.05.10 14:07) [17]
Есть, заработало, очень (!) спасибо!;).


 
Игорь Шевченко ©   (2010-05-27 14:49) [19]


> когда пишу на форумах проверка орфографии отключается автоматически
> для высвобождения ресурсов интеллекта


insufficient resources


 
makvell   (2010-05-27 14:53) [20]


> AlexDan ©   (27.05.10 14:38) [18]

Странная радость :)
А когда вариантов станет больше, что будем делать, добавлять новые элементы, дописывать еще один иф? ;)

ЗЫ И если это таки форма, которую нужно отправить, может лучше вернуть инпутам атрибут name?

ЗЗЫ И если инпуты зависят от выбора в селекте, может не стоит давать их редактировать? :)


 
AlexDan ©   (2010-05-27 15:01) [21]

> makvell   (27.05.10 14:53) [20]
> А когда вариантов станет больше, что будем делать, добавлять
> новые элементы, дописывать еще один иф? ;)
Вариантов три, поэтому этим и обошёлся..
> ЗЗЫ И если инпуты зависят от выбора в селекте, может не
> стоит давать их редактировать? :)
пусть редктируются, это нормально.
> ЗЫ И если это таки форма, которую нужно отправить, может
> лучше вернуть инпутам атрибут name?
это форма которую нужно отправить, name уже вернул).



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.51 MB
Время: 0.093 c
15-1267047005
Юрий
2010-02-25 00:30
2010.08.27
С днем рождения ! 25 февраля 2010 четверг


2-1273738117
9x3bk
2010-05-13 12:08
2010.08.27
Работа с совмещением картинок


9-1187772000
homm
2007-08-22 12:40
2010.08.27
Полноэкранный антиалайсинг.


2-1273339176
sako
2010-05-08 21:19
2010.08.27
азерб. шрифт


2-1269057230
Delphist2
2010-03-20 06:53
2010.08.27
бинарный поиск в listbox





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский