如何根据另一个文本框的值使用jQuery自动完成文本框


How to auto complete a text box using jQuery depending the value of another text box

我使用了两个文本框,这两个框将使用自动完成机制完成。这是一个代码点火器项目。要填充的值是使用Model从数据库中拾取的。在第一个文本框中,它使用以下代码正常工作。

$(function() {
    $("#textbox1").autocomplete({
    source:'<?php echo site_url('controller_name/function_name/arg1/arg2'); ?>'
    });
});

在第二个文本框中,要填充的值取决于文本框1的值。那么如何在site_url()函数中使用textbox1值。

$(function() {
    var data=$("#textbox1").val();
    $("#textbox2").autocomplete({
        source:"<?php echo site_url('controller_name/function_name/arg1/"+data+"');  ?>"
    });
});

我试过上面的方法。但是,变量数据没有得到任何值。

稍微更改控制器功能。使用AJAX发布texbox1值,而不是将其作为arg2发送。并使用$_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);
                       }
                   });
               },
               });
           });

稍微更改控制器功能。使用AJAX发布texbox1值,而不是将其作为argument2发送。并使用$_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);
                       }
                   });
               },
               });
           });