2015-07-09 3 views
0

Как сделать выбранную опцию оставшейся после ссылки? Я использую значение как href, и когда он загружает его, он просто возвращается ко всем. Что делать, чтобы заблокировать значение параметра?Выбрано же по ссылке

Вот мой выбор код:

echo ($AppUI->_("Company tickets:") . '<select id="my-select2" name="currentComp">'); 
echo ('<option value="?m=ticketsmith"/>All') ; 
foreach ($rows as $row) { 
    if (in_array($row['company_id'], $array1)) { 
    echo ('<option value="?m=ticketsmith&amp;ticket_company=' . $row['company_id'] . '" />' . $row['company_id'].', ' . $row["company_name"]) ; 
    } 
} 

И вот мой JS:

document.getElementById("my-select2").onchange = function() { 
    localStorage.setItem('my-select2', document.getElementById("my-select2").value); 
    window.location.href=this.value; 
} 
if (localStorage.getItem('my-select2')) { 
    document.getElementById("my-select2").options[localStorage.getItem('my-select2')].selected = true; 
} 

ответ

1

Версия 1

document.getElementById("my-select2").onchange = function() { 
    localStorage.setItem('my-select2', this.value); 
    window.location.href=this.value; 
} 
var val = localStorage.getItem('my-select2'); 
if (val) { 
    document.getElementById("my-select2")[val].selected=true; 
} 

Version 2 (рекомендуется)

window.onload=function() { 
    document.getElementById("my-select2").onchange = function() { 
    localStorage.setItem('my-select2', this.selectedIndex); 
    window.location.href=this.value; 
    } 
    var selIdx = localStorage.getItem('my-select2'); 
    if (selIdx !=null && selIdx !=-1) { 
    document.getElementById("my-select2").selectedIndex=selIdx; 
    } 
} 
+0

ОТПРАВЛЕННЫЙ КАК ОЧАРОВАТЬ! Но перед редактированием отмените так, чтобы я мог отметить как ответил :) – TorresAlGrande

+0

Привет, что вы имеете в виду? Вы предпочитаете другую версию? Это должно работать лучше и чище. – mplungjan

+0

Предыдущая версия сработала, и этого нет:/ – TorresAlGrande

Смежные вопросы