2013-02-11 5 views
0

бит невежественный, когда дело доходит до таких вещей, однако, если кто-нибудь может помочь, я был бы очень благодарен.Включите javascript в тег href

У меня есть вложенное CSS вертикальное выпадающее меню в выражении мс сети, ранее я использовал asp.net встроенные функции для создания выпадающего меню и следующее:

<select size ="1" name="main10" onchange="window.open(this.options[this.selectedIndex].value,'main')"style="width: 290px"> 

наряду с некоторыми дополнительным кодом, чтобы иметь содержимое раскрывающегося списка появляется в iframe И изменяет размер iframe в соответствии с содержимым (т. е. устраняет полосы прокрутки и другую гадость)

Однако выражение не позволяет легко вставлять выпадающие списки, и я вынужден попробовать другой подход.

Мне нужно включить вышеуказанный код в это: <li><a href="#">Some Text Here</a></li> много раз, с разными URL-адресами, ссылаясь на различные страницы внутри сайта.

Я старался быть как можно более наглядным, но я, без сомнения, пропустил какую-то важную информацию, поэтому, пожалуйста, спросите, не ясен ли я.

+1

Почему вы хотите Javascript? – SLaks

+0

HTML не допускает вложенных выпадающих списков с помощью SELECT, независимо. –

+0

извините, но каков ваш реальный вопрос? вы описали свою настройку и некоторые вещи, которые вы пробовали, но я понятия не имею, о чем вы спрашиваете. –

ответ

0

Если вы правильно поняли, вы просто хотите щелкнуть тег привязки, чтобы запустить JS. Если да, то вы можете сделать это:

<li><a href="#" onclick="your JS here;">Some Text Here</a></li> 

Было бы неплохо return false; из обработчика щелчка тоже, чтобы предотвратить действие щелчка по умолчанию, и если вы поместите нужный URL в href приписывать ссылка по-прежнему работают даже для пользователей с отключенным JS. Так положить, что вместе с window.open:

<li><a href="http://xyz.com" onclick="window.open(this.href,'main');return false;">Some Text Here</a></li> 

Учитывая вы собираетесь иметь много этих ссылок вы не хотите повторять window.open() везде, так что:

<li><a href="http://x.com" onclick="return doOpen(this.href);">X Here</a></li> 
<li><a href="http://y.com" onclick="return doOpen(this.href);">Y Here</a></li> 
<li><a href="http://y.com" onclick="return doOpen(this.href);">Z Here</a></li> 

<script> 
function doOpen(url) { 
    window.open(url, 'main'); 
    return false; 
} 
</script> 
+0

Это работает! Большое вам спасибо, вы не представляете, сколько потенциальной сердечной боли вы меня пощадили! – user2062729

+0

Ой, нет, это не совсем правильно работает ... В результате iframe имеет полосу прокрутки, которой я старался избежать в первую очередь – user2062729

+0

Зачем поощрять использование атрибута 'onclick'? Я хотел бы указать, что искатель пишет ненавязчивый JavaScript ... –