2015-06-11 4 views
0

У меня есть машинописный работает нормально, но когда я выбираю запись, вход заполнен «не определено»твиттер идет не определено при выборе

enter image description here

enter image description here

Любая идея, почему? Есть ли событие «выбора» или что-то, что я могу использовать для заполнения ввода текущим выбранным значением? Я не нашел никакой информации об этом поведении в Интернете. Вот машинописный декларация:

$('.receivers-input').typeahead({ 
     minLength: 0, 
    }, { 
     source: function (query, cb) { 
      var Request = $.ajax({ 
       methode: "POST", 
       url: "MessagingService.svc/UserAutocomplete", 
       dataType: "json", 
       contentType: "application/json; charsert=utf-8", 
       data: JSON.stringify({ "inputString": query }) 
      }).done(function (Response) { 
       if (!Response.UserAutocompleteResult.success) { 
        if (!Response.UserAutocompleteResult.message) 
         return; 
        ErmesManager.notify(Response.UserAutocompleteResult.message, null); 
        return; 
       } 
       cb(Response.UserAutocompleteResult.d); 
      }); 
     }, 
     templates: { 
      suggestion: function (suggestion) { 
       return '<p>' + suggestion + '</p>'; 
      } 
     } 
    }).on('typeahead:selected', function (event, data) { 
     $('.receivers-input').val(''); 
     ComputeToken(data, true); 
    }).on('blur', function (event, data) { 
     $('.receivers-input').val(data); 
    }); 
} 
+0

Не могли бы вы отправить код? – SzybkiSasza

+0

У меня есть изменение с объявлением typeahead, не знаю, что еще может быть полезно –

+0

Вы ждали, что поисковая система будет инициализирована? Почему вы не использовали ищейку? – SzybkiSasza

ответ

0

Добавление on('typeahead:cursorchanged', function (event, data) {}); сделать трюк. Плюс, так как я использую дисплей placeholder, это немного грязно. Я очистил его, добавив visibility: hidden в класс tt-hint.

Вот полные модификации:

CSS:

tt-hint{ 
    visibility: hidden; 
} 

Javascript:

... 
}).on('typeahead:selected', function (event, data) { 
     $('.receivers-input.tt-input').val(''); 
     ComputeToken(data, true); 
    }).on('blur', function() { 
     $('.receivers-input.tt-input').val(''); 
    }).on('typeahead:cursorchanged', function (event, data) { 
     $('.receivers-input.tt-input').val(data); 
    }); 

CursorChanged событие не было зарегистрировано here, если кто-то есть другие источники документации, которую я бы рад их иметь.

Я бы добавил, что этот вопрос и ответ находятся в контексте старой версии начальной загрузки. С последней версией (на данный момент) typeahead: select тоже сделал бы трюк.

Смежные вопросы