Javascript 带geojson标记的提前键入和Bloohdound

Javascript 带geojson标记的提前键入和Bloohdound,javascript,twitter-bootstrap,leaflet,Javascript,Twitter Bootstrap,Leaflet,我想在带有geojson标记层的搜索框中使用typeahead和Brandhound。使用位于引导导航栏中的传单地图和搜索框,用户可以查找地图上显示的项目 在实施《猎犬》和《打字前进》的过程中,有一点我就是不明白。我一直无法使它工作 首先,我使用array.push方法使用以下代码将信息从层发送到阵列: function onEachFeatureProj(feature, layer) { var ProjPopup = '<strong>Organization

我想在带有geojson标记层的搜索框中使用typeahead和Brandhound。使用位于引导导航栏中的传单地图和搜索框,用户可以查找地图上显示的项目

在实施《猎犬》和《打字前进》的过程中,有一点我就是不明白。我一直无法使它工作

首先,我使用array.push方法使用以下代码将信息从层发送到阵列:

   function  onEachFeatureProj(feature, layer) {
var ProjPopup = 
    '<strong>Organization: ' + feature.properties.OrgName + '</strong>';
 ProjSearch.push({
    name: layer.feature.properties.OrgName,
    source: "CSJ 2014",
    id: L.stamp(layer),
    lat: layer.feature.geometry.coordinates[1],
    lng: layer.feature.geometry.coordinates[0]
  });
layer.bindPopup(ProjPopup);
}
最后,我开始将其发送到搜索框:

  /* instantiate the typeahead UI */
  $("#searchbox").typeahead({
    minLength: 3,
    highlight: true,
    hint: false
  }, {
    name: "CSJ 2014",
    displayKey: "name",
    source: ProjBH.ttAdapter(),
    templates: {
      header: "<h4 class='typeahead-header'>Projects</h4>",
      suggestion: Handlebars.compile(["{{name}}"].join(""))
    } 
  });
/*实例化typeahead UI*/
$(“#搜索框”)。提前键入({
最小长度:3,
推荐理由:没错,
提示:错误
}, {
名称:“CSJ 2014”,
显示键:“名称”,
来源:ProjBH.ttAdapter(),
模板:{
标题:“项目”,
建议:handlebar.compile([{{name}}].join(“”)
} 
});
请点击此处:

编辑


我终于找到了问题所在。我缺少一些html元素来接收内容:

 <table class="table table-hover" id="feature-list">
        <tbody class="list"></tbody>
 </table>

加载后立即抛出JS错误
未捕获错误:无效的数据集名称:CSJ 2014
。 这是因为typeahead.js不允许在
name
中使用空格。 只能由下划线、破折号、字母(a-z)和数字组成 见
为什么不切换到CSJ_2014呢?

我终于找到了问题。我缺少一些html元素来接收内容:

 <table class="table table-hover" id="feature-list">
    <tbody class="list"></tbody>
 </table>


这一点很好。我尝试更改名称,但没有得到不同的结果。您在此处查找的确切行为是什么?显示/隐藏基于猎犬查询的地图功能的代码在哪里?我尝试做的是:用户在搜索框中输入文本,从标记层查找特定项目,并在列表中显示建议,以便点击。我在JSFIDLE上的示例试图达到这个目的。请注意,当导航栏中开始显示提示时,在导航栏中使用“猎犬”需要解决一些css问题。谢谢,我刚刚发现了主要问题:我缺少一些html代码来接收来自“猎犬”和“提前键入”的信息。
 <table class="table table-hover" id="feature-list">
    <tbody class="list"></tbody>
 </table>