表达js typeahead js显示未定义

时间:2019-03-06 09:33:02

标签: javascript sql express typeahead.js

我想在我的node.js项目中使用typeahead.js插件。我使用express.js和mysql。前面的代码是:

$('input.typeahead').typeahead({
  name: 'typeahead',
  remote: '/search?key=%QUERY',
  limit: 10,
  templates: {
    empty: [
      '<div class="empty-message">',
      'search is not found',
      '</div>'
    ].join('\n'),
    suggestion: function(data) {
      //return ' sasasa'
      return data.name + ' <a href="/xxx/' + data.link + '">Go to xxx</a>&nbsp;<a href="/yyy/' + data.link + '">Go to yyy</a>'
    }
  }
});

我的远程(后端)代码是:

app.get('/search', function(req, res) {
  var sql = 'SELECT * FROM urunTB WHERE urunAdi LIKE "%' + req.query.key + '%" AND urunAktif=1';
  vt.query(sql, function(error, results, fields) {
    if (error) throw error;
    var data = [];
    for (i = 0; i < results.length; i++) {
      //data.push(results[i].urunAdi + results[i].ID); 
      data.push({
        name: results[i].urunAdi,
        link: results[i].ID
      });
    }
    console.log('JSON.stringify(data): ' + JSON.stringify(data));
    return res.end(JSON.stringify(data));
  })
});

当我键入任何内容时,只会显示一个建议,并且其中包含“未定义”

请帮助 谢谢。

0 个答案:

没有答案