2012-04-08 3 views
-3

Я работаю над codeigniter и пытаюсь выяснить, как изменить значение переменной сеанса, когда пользователь меняет выпадающее меню.Dropdown Изменение значения сеанса

<select name="testselect"> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
    <option value="4">4</option> 
    <option value="5">5</option> 
</select> 

Идеи?

+0

Вы имеете в виду, что у вас есть предварительно выбранное значение? – Norse

+0

Нет. У меня уже есть значение, выбранное ранее, если пользователь выбирает другой вариант в раскрывающемся списке. Я хочу, чтобы он снова смог изменить глобальный сеанс. –

+0

Посмотрите, вам нужно предоставить дополнительную информацию; должно ли что-то произойти после того, как пользователь изменит значение раскрывающегося списка, которое должно произойти до того, как они отправят форму? Если это так, тогда вам нужно использовать JavaScript для его захвата. – stealthyninja

ответ

2

Поскольку вы помечено ваш вопрос с JQuery, я предполагаю, что вы используете его где-нибудь на вашей странице, так что вы измените свой HTML на это:

<select name="testselect" id="testselect"> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
    <option value="4">4</option> 
    <option value="5">5</option> 
</select> 

и добавить к вашему $(document).ready(..); вызову чтобы зафиксировать изменения в этом выпадающем списке следующим образом:

$(document).ready(function() { 
    $('#testselect').change(function() { 
     // POST the changed value to a method in a controller that can accept 
     // a parameter and that'll set the session variable for you 
     $.post("http://location/to/controller/method/", 
      { testselect: this.value }, 
      'html' 
     ); 
    }); 
}); 
0

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

+0

Это не идентификатор сеанса, его просто значение ключа сеанса –

+0

Одна вещь - значение сеанса, а другое - это ключ. Что вы подразумеваете под значением ключа сеанса? Будь понятен. –

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