在搜索中建议单击内容转到codeigniter中的文本区域

时间:2019-01-19 11:48:08

标签: javascript codeigniter

当我在input中键入某个关键字时,将显示搜索选项,但是当我单击建议的关键字时,它将不会转到该搜索结果的地址。如何使搜索结果包含指向结果的链接? 一个有效的示例位于http://max2colors.com/网站的搜索选项上。

<script type="text/javascript">

function ajaxSearch()
{   
    var input_data = $('#query').val();

    if (input_data.length === 0)
    {
        $('#suggestions').hide();
    }
    else
    {

        var post_data = {
            'query': input_data,
            '<?php echo $this->security->get_csrf_token_name(); ?>': '<?php echo $this->security->get_csrf_hash(); ?>'
            };

        $.ajax({
            type: "POST",
            url: "<?php echo base_url(); ?>user/autocomplete",
            data: post_data,
            success: function (data) {
                // return success
                if (data.length > 0) {
                    $('#suggestions').show();
                    $('#autoSuggestionsList').addClass('auto_list');
                    $('#autoSuggestionsList').html(data);
                }
            }
         });

     }
 }
</script>

1 个答案:

答案 0 :(得分:0)

如果要基于单击的建议项设置输入值,请尝试使用如下的jquery代码:

<script type="text/javascript">

$('#autoSuggestionsList li').click(function (e) { // suggestion item click event
    $('#query').val($(this).text()).focus(); // get the suggestion value & apply the value to the input
    $('#suggestions').hide(); // close the suggestion list
});

function ajaxSearch()
{   
    var input_data = $('#query').val();

    if (input_data.length === 0)
    {
        $('#suggestions').hide();
    }
    else
    {

        var post_data = {
            'query': input_data,
            '<?php echo $this->security->get_csrf_token_name(); ?>': '<?php echo $this->security->get_csrf_hash(); ?>'
            };

        $.ajax({
            type: "POST",
            url: "<?php echo base_url(); ?>user/autocomplete",
            data: post_data,
            success: function (data) {
                // return success
                if (data.length > 0) {
                    $('#suggestions').show();
                    $('#autoSuggestionsList').addClass('auto_list');
                    $('#autoSuggestionsList').html(data);
                }
            }
        });

    }
}
</script>