Twitter Typeahead数据传递

时间:2014-02-05 19:02:59

标签: bootstrap-typeahead

我正在使用twitter typeahead bundle。我有这样的代码:

   var results = new bloodhound({...}) 
   //results is a map in json with the keys ID and displayName. It's  grabbed by ajax call.

    $('#element').typeahead({
    ...
    {
      name: 'Results',
      displayKey: 'displayName',
      source: results.ttAdapter(),
    }...

这非常非常好。当用户输入内容时,结果将被填充。但是,我遇到的一个问题是当用户点击“提交”时,我需要抓取的值不是displayName,而是ID。

如果用户输入“考试”,假设结果地图如下所示:{“id”:“100”,“displayName”:“Example1”}。他们点击“Example1”,然后example1跳转到文本框。但是,当用户单击提交时,我希望“100”来自该元素,而不是“Example1”。这可能吗?

1 个答案:

答案 0 :(得分:1)

您可以使用typeahead selected handler

.on("typeahead:selected", function(event, item) {
    $("#hiddenInputToSubmit").val(item.id);
    return;
}

也许这对你有用吗?