Javascript.RU

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

Не знаю как назвать....
Написал код.

подскажите как его переделать чтобы можно было использовать не 1 форму f1 а много f1 f2 f3 f4 и т.д
и не одно choice а choice1 choice2 choice3

соответственно f1-choice1, f2-choice2, f3-choice3

проблема как правильно передавать f и choice в функцию
selectImage

и как правильно обращаться к переданным значениям.


Код:
<style type="text/css">

select.a{
background:url('');

   background-repeat: no-repeat;
   height:60px;
   width:120px;
}

option
{
   background-repeat: no-repeat;
   height:60px;
   width:90px;
}
option.a1{
   background-image: url('img/line_g.png');
}
option.a2 {
    background-image: url('img/C_g.png');
}
option.a3 {
    background-image: url('img/C_v.png');
}
</style>




<FORM name="f1"  action="#">
<SELECT name="choice" class="a" onChange="selectImage()">
<OPTION class="a1" VALUE="Less than 1 year.">
<OPTION class="a2" VALUE="1-5 years.">
<OPTION class="a3" VALUE="1-5 years.">
</SELECT>
</FORM>



<SCRIPT language="javascript">


function selectImage()
{

  document.f1.choice.style.backgroundImage = "url('"+imageSet[document.f1.choice.selectedIndex]+"')";
  
}


function Selector(images)
{

/* si: start index 
** i: current index
** ei: end index
** cc: current count 
*/
 si = 0; 
 ci=0;
 cc=0;
 imageSet = new Array();
 ei = images.length;
 
for (i=1;i<ei;i++) {
if (images.charAt(i) == ' ' || images.charAt(i) == ',') {
imageSet[cc] = images.substring(si,i);

cc++;
si=i+1;   }
}

}

</SCRIPT>
<SCRIPT>

Selector("img/line_g.png img/C_g.png img/C_v.png ");

</SCRIPT>
Ответить с цитированием
  #2 (permalink)  
Старый 15.05.2011, 20:05
Аватар для walik
Профессор
Отправить личное сообщение для walik Посмотреть профиль Найти все сообщения от walik
 
Регистрация: 09.11.2009
Сообщений: 1,101

selectImage(this);

Ну и саму функцию поменяйте соответственно.
__________________
"Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете."
Мой сертификат :-D клацай
Ответить с цитированием
  #3 (permalink)  
Старый 16.05.2011, 09:37
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

melnikdima, открой для себя идентификаторы элементов и начинай их применять...
Но в данной задаче пример от walik самое то.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Даже не знаю как это описать... z700i Общие вопросы Javascript 5 11.04.2011 22:01
Как сделать AJAX-авторизацию на страничке? emerge AJAX и COMET 1 08.03.2010 10:00
Как организовать RichEdit arma Элементы интерфейса 2 18.02.2010 14:57
даже не знаю как сформуллировать, вопрос по AJAX eugene00 AJAX и COMET 15 15.02.2010 15:07
Как сделать электронный каталог продукции? natarius Серверные языки и технологии 6 24.05.2009 20:56