Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   За счёт выбора в dropdown заменить ссылку? (https://javascript.ru/forum/misc/9919-za-schjot-vybora-v-dropdown-zamenit-ssylku.html)

easyterm 11.06.2010 12:51

За счёт выбора в dropdown заменить ссылку?
 
Всем привет.

Есть кусок HTML

<!-- Begin hdd -->
<form method="post" action="" class="jcart">
	<fieldset>
		<input type="hidden" name="id" value="hdd" />
		<input type="hidden" name="name" value="HDD" />
		<input type="hidden" name="price" value="0.0" />

		<a href="info/hdd.html" rel="facebox"><img alt="Information" border="0" src="images/i.png" /></a>&nbsp;
		<strong>HDD</strong>&nbsp;
														
		<input type="hidden" name="option[19][name]" value="Model" />
			<label>Model:&nbsp; 
    			<select name="option[19][value]">
    				<option value="hdd1000,70.00">HDD 1000GB</option>
					<option value="hdd500,60.00">HDD 500GB</option>
					<option value="hdd250,50.00">HDD 250GB</option>
				</select>
    		</label>
				&nbsp;<a href="info/hdd_1000gb.html" rel="facebox"><img alt="Information" border="0" src="images/i.png" /></a>&nbsp;
			<label>&nbsp;Menge:&nbsp;<input type="text" name="qty" value="1" size="3" /></label>
		<input type="submit" name="my-add-button" value="In den Warenkorb" class="button" />
	</fieldset><hr noshade id="line" size="1">
</form>
<!-- End hdd -->


Не могу представить как можно в зависимости от выбора HDD 1000GB, HDD 500GB, HDD 250GB в dropdown меню заменить ссылку
<a href="info/hdd_1000gb.html" rel="facebox"><img alt="Information" border="0" src="images/i.png" /></a>


К примеру если выбрано
<option value="hdd500,60.00">HDD 500GB</option>
то нужно при помощи javascript подменить ссылку на
<a href="info/hdd_500gb.html" rel="facebox"><img alt="Information" border="0" src="images/i.png" /></a>


Заранее огромное спасибо!

Skipp 11.06.2010 12:53

ставишь id, получаешь элемент по id и меняешь её атрибут href

Skipp 11.06.2010 12:58

<a id="link" href="http://javascript.ru/" rel="facebox"><img alt="Information" border="0" src="images/i.png" /></a>
<input type="button" onclick="rl()" value="Поменять">
<script>
function rl()
{
var link = document.getElementById('link');
var href = link.getAttribute('href');
if(href == "http://javascript.ru/")
 link.setAttribute('href','http://javascript.ru/forum/');
else
 link.setAttribute('href','http://javascript.ru/');
}
</script>


Смотри в адрессную строку.

И отформатируй текст ормально.

easyterm 11.06.2010 13:01

Цитата:

Сообщение от Skipp (Сообщение 59009)
ставишь id, получаешь элемент по id и меняешь её атрибут href

Вы бы не могли ответить с примером решения. Просто мои понятия программирования по шкале от 1 до 100 равны примерно 2.

UPD. Пока я писал вы уже ответели. Спасибо большое! Буду ковырять дальше.

Skipp 11.06.2010 13:04

easyterm,
А зачем тогда полезли в код? Для этого есть специально обученные люди:)

easyterm 11.06.2010 13:11

Цитата:

Сообщение от Skipp (Сообщение 59012)
easyterm,
А зачем тогда полезли в код? Для этого есть специально обученные люди:)

Плохо с деньгами. Да и полезно хоть что то самому сделать. :)

Skipp 11.06.2010 13:15

easyterm,
Хоть что-то не полезно, так как это будет хоть как-то.

easyterm 11.06.2010 13:20

Вы правы. Но у меня всё равно нет выбора. Так что буду радоваться тому что получится. :)

Skipp 11.06.2010 13:41

Вроде так:

<label>Model:&nbsp;
	                <select id="sls" name="option[19][value]" onchange="sc()">
	                    <option value="hdd1000,70.00">HDD 1000GB</option>
	                    <option value="hdd500,60.00">HDD 500GB</option>
	                    <option value="hdd250,50.00">HDD 250GB</option>
	                </select>
	            </label>
	                &nbsp;<a id="link" href="info/hdd_1000gb.html" rel="facebox"><img alt="Information" border="0" src="images/i.png" /></a>&nbsp;
					
				<script type="text/javascript">
					function sc()
					{
						var opt = document.getElementById('sls').getElementsByTagName('option');
						for(var i=0; i<opt.length; i++)
							if(opt[i].selected)
								document.getElementById('link').setAttribute('href', "info/" + opt[i].innerHTML.replace(" ", "_") + ".html");
					}
				</script>

easyterm 11.06.2010 14:44

Огромное спасибо! Думаю это как раз то что нужно! Буду ковырять дальше. Правда мозг немного плавится начинает. Мне срочно нужно перерыв сделать. :-?


Часовой пояс GMT +3, время: 13:06.