我正在使用codeigniter并尝试找出当用户更改下拉菜单时如何更改会话变量的值。
<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 :(得分: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'
);
});
});
答案 1 :(得分:0)
您必须使用JavaScript来提交新闻值,并且您还需要控制器中的一个函数来捕获该值。但我不确定是否可以更改会话ID。我几乎可以肯定它不可能,但肯定不安全。