Select Есть решение
Как правильно вставить выпадающий список на сайт?
Добавлял блоком:
<form name="menu">
<select name="sel" onchange="linklist(document.menu.sel)">
<option title="Санкт-Петербург" value="http://shop.elbaspb.ru/">Санкт-Петербург</option>
<option title="Москва" value="http://www.e-mebel.ru/">Москва</option>
<option title="Нижний Новгород" value="http://nn.elbamebel.com/">Нижний Новгород</option>
<option title="Екатеринбург" value="http://ekt.elbamebel.com/">Екатеринбург</option>
<option title="Новосибирск" value="http://nsk.elbamebel.com/">Новосибирск</option>
<option title="Ростов-на-Дону" value="http://rst.elbamebel.com/">Ростов-на-Дону</option>
<option title="Воронеж" value="http://vrn.elbamebel.com/">Воронеж</option>
</select>
</form>
{literal}
<script language="JavaScript" type="text/javascript">
function linklist(what){
var selectedopt=what.options[what.selectedIndex]
if (document.getElementById && selectedopt.getAttribute("target")=="new")
window.open(selectedopt.value)
else
window.location=selectedopt.value
}
</script>
{/literal}
А на сайте уже как: {$wa->block("sites")}
Перехода не происходит.
Пробовал код вставлять в настройках: "Дополнительный JavaScript-код для вставки перед закрывающим тегом </head>", тоже не помогает.
Добавлял блоком:
<form name="menu">
<select name="sel" onchange="linklist(document.menu.sel)">
<option title="Санкт-Петербург" value="http://shop.elbaspb.ru/">Санкт-Петербург</option>
<option title="Москва" value="http://www.e-mebel.ru/">Москва</option>
<option title="Нижний Новгород" value="http://nn.elbamebel.com/">Нижний Новгород</option>
<option title="Екатеринбург" value="http://ekt.elbamebel.com/">Екатеринбург</option>
<option title="Новосибирск" value="http://nsk.elbamebel.com/">Новосибирск</option>
<option title="Ростов-на-Дону" value="http://rst.elbamebel.com/">Ростов-на-Дону</option>
<option title="Воронеж" value="http://vrn.elbamebel.com/">Воронеж</option>
</select>
</form>
{literal}
<script language="JavaScript" type="text/javascript">
function linklist(what){
var selectedopt=what.options[what.selectedIndex]
if (document.getElementById && selectedopt.getAttribute("target")=="new")
window.open(selectedopt.value)
else
window.location=selectedopt.value
}
</script>
{/literal}
А на сайте уже как: {$wa->block("sites")}
Перехода не происходит.
Пробовал код вставлять в настройках: "Дополнительный JavaScript-код для вставки перед закрывающим тегом </head>", тоже не помогает.
Эта тема в архиве. Добавление комментариев к ней отключено.
6 ответов
У меня ваш код работает. Возможно, у вас на страницах сайта возникает ошибка какого-то другого фрагмента JavaScript-кода, из-за чего до выполнения данного фрагмента кода дело просто не доходит. Наличие таких ошибок можно проверить в консли ошибок браузера.
Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на http://mc.yandex.ru/webvisor/3832660?rn=554022397&page-url=http%3A%2F%2Fwww.elbamebel.com%2F&wmode=0&wv-type=0&wv-hit=937247343&wv-part=1&wv-check=40817&browser-info=z%3A240%3Ai%3A20140522120105%3Arqnl%3A1%3Ast%3A1400745666. Это может быть исправлено путем перемещения ресурса в тот же домен или включением CORS.
Но как её исправить не представляю.
замените на
<select name="sel" onchange="linklist(this)">
<form id="myform">
<select id="mymenu" onchange = "window.location=document.forms[0].mymenu.options[document.forms[0].mymenu.selectedIndex].value" />
<option title="Санкт-Петербург" value="http://shop.elbaspb.ru/">Санкт-Петербург</option>
<option title="Москва" value="http://www.e-mebel.ru/">Москва</option>
<option title="Нижний Новгород" value="http://www.elbamebel.com/nn">Нижний Новгород</option>
<option title="Екатеринбург" value="http://www.elbamebel.com/ekt">Екатеринбург</option>
<option title="Новосибирск" value="http://www.elbamebel.com/nsk">Новосибирск</option>
<option title="Ростов-на-Дону" value="http://www.elbamebel.com/rst">Ростов-на-Дону</option>
<option title="Воронеж" value="http://www.elbamebel.com/vrn">Воронеж</option>
</select>
</form>