jquery自动完成结果到html / div

时间:2014-11-19 04:28:48

标签: javascript jquery html mysql autocomplete

我需要将数据库中的结果输出到jquery自动完成,这会在用户键入搜索时将结果动态地放到html中。

1)输入和div元素的html标签
2)javascript / jquery  
a)调用json url来获取数据  
b)jquery / javascript填充html div标签列表(并在搜索时删除元素。

搜索名称:Hitlon

我搜索过类似的问题,但无法找到完整的解决方案。这类似于Google搜索结果。

HTML输出将是div标签,在同一页面的结果中显示商品名称和位置。



var myJSONObject = {"searchResults": [
        {"id": "10", "permit": "MB863880", "trade_name": "HILTON GARDEN INN", "location":"4449 RIDGEMONT DR ABILENE, TX, 79606"},
        {"id": "213", "permit": "MB850728", "trade_name": "HILTON GARDEN INN - ADDISON", "location":"4090 BELT LINE RD ADDISON, TX, 75001"},
        {"id": "273", "permit": "RM766705", "trade_name": "HILTON GARDEN INN-ALLEN", "location":"705 CENTRAL EXPY S ALLEN, TX, 75013"}
    ]
};




2 个答案:

答案 0 :(得分:0)

我不想为你编码,但我可以带你通过这个。

由于您将服务响应作为JSON对象,因此您现在需要执行以下步骤:

  1. 在javascript中通过json响应迭代一个数组。
  2. 动态创建html元素div并将JSON字段数据连接到其中。
  3. 将其附加到您已定义的div(您的搜索结果容器)。
  4. 如果您需要知道如何迭代JSON对象

    ,请告诉我

答案 1 :(得分:0)

您可以使用Jquery .each()方法遍历您的json对象

var myJSONObject = {"searchResults": [
        {"id": "10", "permit": "MB863880", "trade_name": "HILTON GARDEN INN", "location":"4449 RIDGEMONT DR ABILENE, TX, 79606"},
        {"id": "213", "permit": "MB850728", "trade_name": "HILTON GARDEN INN - ADDISON", "location":"4090 BELT LINE RD ADDISON, TX, 75001"},
        {"id": "273", "permit": "RM766705", "trade_name": "HILTON GARDEN INN-ALLEN", "location":"705 CENTRAL EXPY S ALLEN, TX, 75013"}
    ]
};

$.each(myJSONObject.searchResults, function(i, item) {
    $('body').append('<div>'+item.trade_name+'</div>')
})

底部函数会追加一个div,每个商品的商品名称,你可以推断出打印其他东西