javascript - jQuery 中的自动完成只是...停止工作?

标签 javascript jquery mysql codeigniter autocomplete

当莫名其妙地完全停止运行时,我让 jQuery 自动完成功能与 CodeIngiter 完美配合。当我访问自动完成 Controller 时,我仍然看到正确的数组——Javascript 只是没有返回 JSON 数据。奇怪的是它工作正常,然后突然停止工作。

这是我的 Javascript:

$( "#clubs-complete" ).autocomplete({
    source: function(request, response) {
        $.ajax({
            url: 'http://www.myurl.com/create/autocomplete',
            data: 'term='+$("#clubs-complete").val(),
            dataType: "json",
            type: "POST",
            success: function(data){
                alert(data);
                response(data);
            }
    });
},
minLength: 1
});

这是我的 Controller :

public function autocomplete()
{
    // Search term from jQuery
    $term = $this->input->post('term');

$this->db->select('name','address2');
$this->db->from('clubs');
$this->db->like('name', $term);
$suggestions = $this->db->get()->result();

if (count($suggestions) > 0) {
    $data = array();

    foreach ($suggestions as $suggestion) {
        array_push($data, $suggestion->name);
    }

        // Return data
        echo json_encode($data);
}


}

有人知道发生了什么事吗? javascript 函数中的警报现在不返回任何内容,而过去是。当我直接访问 URL 时,我仍然看到完整的数组。

请帮忙,我的头发都快掉了。

最佳答案

在 IE 中有 developer tools按 F12 可用。 Firefox 中有类似的东西叫做 Firebug .在其中任何一个中,您都可以调试浏览器内的 javascript。在 source fn 和 success 函数中设置断点,它可能会给您一些启发。

您可能还想获得一个 http 调试代理,例如 Fiddler2或 Charles,它将让您看到传出的 HTTP 请求及其相应的响应。 Fiddler2 在 Windows 上运行,可与 FF 和 IE 以及几乎所有其他 http 客户端一起使用。这将使您看到 AJAX 服务返回到浏览器内 javascript 的消息。

这些东西应该能让您深入了解“不工作”的问题。

关于javascript - jQuery 中的自动完成只是...停止工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5996464/

相关文章:

javascript - Chrome 扩展消息传递 : Unchecked runtime. lastError : Could not establish connection. 接收端不存在

javascript - 如果只有一个选项可用,则禁用选择

mysql - mysql查询中find_in_set中的逗号分隔字符串是否有限制

mysql - 检查字符串是否包含列的任何字符串的条件是什么,反之亦然?

javascript - 如何将结果列表中的项目应用到当前对象的父 Div 标签?

java - 配置 hibernate 5.0.1 和 MySQL 时出错

java - Struts2中如何保留表单值?

javascript - 检查对象是否已存在于数组中?

jQuery .hover 其下有元素

javascript - 如何在 jQuery-Validation-Engine 中提交表单时停止页面刷新