我正在使用2个文本框,这些文本框将使用自动完成机制完成。这是一个 codeigniter 项目。使用Model从数据库中选择要填充的值。在第一个文本框中,它可以正常使用以下代码。
$(function() {
$("#textbox1").autocomplete({
source:'<?php echo site_url('controller_name/function_name/arg1/arg2'); ?>'
});
});
在第二个文本框中,要填充的值取决于textbox1值。那么如何在site_url()函数中使用textbox1值。
$(function() {
var data=$("#textbox1").val();
$("#textbox2").autocomplete({
source:"<?php echo site_url('controller_name/function_name/arg1/"+data+"'); ?>"
});
});
我尝试过上述方法。但是,可变数据没有任何价值。
答案 0 :(得分:2)
稍微改变控制器功能。而不是将texbox1
值发送为arg2,而是使用AJAX发布它。并使用$_POST['data']
在函数内接收它。发送arg1并发布arg2值。
$(function() {
$( "#textbox2" ).autocomplete({
source: function(request, response) {
$.ajax({ url:"<?php echo site_url('controller_name/function_name/arg1');?>",
data:{'request':$("#textbox1").val()},
dataType: "json",
type: "POST",
success: function(data){
response(data);
}
});
},
});
});
答案 1 :(得分:1)
稍微改变控制器功能。而不是将texbox1
值作为argument2发送,而是使用AJAX发布它。并使用$_POST['data']
在函数内接收它。
$(function() {
$( "#textbox2" ).autocomplete({
source: function(request, response) {
$.ajax({ url:"<?php echo site_url('controller_name/function_name/arg1');?>",
data:{'request':$("#textbox1").val()},
dataType: "json",
type: "POST",
success: function(data){
response(data);
}
});
},
});
});