美好的一天,
<script>
$('#selparents option').each(function() {
var type=$('#selparents').val();
alert(type);
$.post('<?php echo base_url();?>index.php/user_controll/show_detail/'+type,{
type:type
},
function(data)
{
$('#result').html(data);
});
});
</script>
上面是我简单的jquery。
好的,我想做的是。当页面被执行时,将进行会话。
public function show_detail($type)
{
extract(populateform());
$this->session->set_userdata(array('tipe_pilihan' => $type));
/////////
但是当页面未被executed
时,会话必须为空。需要改变。我如何添加onchange
因为我的脚本只能在上面运行,如果已经从会话设置了值。
<select id="selparents" class="form-control select2" name="parent">
<option value="0">None</option>
<?php
$s = "";
$type_pilihan = $this->session->userdata('tipe_pilihan');
foreach($tipe as $hslnya)
{ if($type_pilihan == $hslnya->id_tipe)
{
echo "<option selected value='".$hslnya->id_tipe."'>".$hslnya->deskripsi."</option>";
}else{
echo "<option value='".$hslnya->id_tipe."'>".$hslnya->deskripsi."</option>";
}
}
?>
</select>
抱歉我的英语不好。
感谢@Barmar我的loop alert
已修复。但是,与我的older script
不同,当选择框已从会话中选择某个选项时,警报不会显示(重新加载时)。
答案 0 :(得分:1)
我不完全确定你在问什么,但我认为这可能是你在寻找的东西:
$("#selparents").change(function() {
var type = $(this).val();
$.post('<?php echo base_url();?>index.php/user_controll/show_detail/'+type,{
type:type
},
function(data)
{
$('#result').html(data);
});
});
您的代码在加载页面时重复执行AJAX调用,而不是在用户从菜单中选择时。