我的html中有两个选择列表,两个都保存在数据库中,我想知道当用户使用jquery更改select 1时,如何更改selectlist 2中的值?
我正在尝试在codeigniter中做这些事情,所以请帮助我,我之前使用jquery做过这些事情但是在简单的PHP中通过将值传递给jquery的加载函数,但这在codeigniter中不起作用,有人请帮帮我
谢谢,
Shah RUkh
答案 0 :(得分:2)
比如说你有这个下拉列表
<select id="select_1">
<option value="">Select</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<select id="select_2">
<option value="">Select</option>
</select>
在更改select_1下拉列表时,您应该获取值并向控制器函数执行AJAX请求,这将返回select_2的选项,而不是简单地将select_2的html替换为来自脚本的返回响应
$('#select_1').change(function(){
var id = $(this).val();
$.ajax({
type: "POST",
url: base_url+'controller/action/',
data: 'id='+id,
success: function(html){
$('#select_2').html(html);
}
});
});
对于codeignitor,在ajax请求的url参数中使用base_url。您可以为base_url定义一个CDATA
变量,您可以在ajax请求中使用该变量,您可以在header.php文件中定义它。
<script type="text/javascript">
//<![CDATA[
base_url = '<?php echo base_url();?>';
//]]>
</script>
答案 1 :(得分:0)
好的,我已经使用jQuery
完成了它 <script type="text/javascript">
$(document).ready(function()
{
$("#slect_1").change(function()
{
id = $("#select_1").val();
$("#select_2").load("<?php echo site_url('class/method'); ?>/"+id);
});
});
</script>
谢谢,
Shah Rukh