Tôi đang cố gắng sử dụng twitter bootstrap để có được các nhà sản xuất từ DB của tôi.twitter bootstrap typeahead (phương pháp 'toLowerCase' không xác định)
Vì twitter bootstrap typeahead không hỗ trợ các cuộc gọi ajax Tôi đang sử dụng nĩa này:
https://gist.github.com/1866577
Trong trang đó có comment này đề cập đến làm thế nào để thực hiện chính xác những gì tôi muốn làm. Vấn đề là khi tôi chạy mã của tôi, tôi tiếp tục nhận được:
Uncaught TypeError: Cannot call method 'toLowerCase' of undefined
Tôi googled xung quanh và đến cố gắng thay đổi tập tin jquery của tôi để cả hai bằng cách sử dụng minified và phi minified cũng như một lưu trữ trên google mã và tôi vẫn tiếp tục nhận được cùng một lỗi.
Mã của tôi hiện nay là như sau:
$('#manufacturer').typeahead({
source: function(typeahead, query){
$.ajax({
url: window.location.origin+"/bows/get_manufacturers.json",
type: "POST",
data: "",
dataType: "JSON",
async: false,
success: function(results){
var manufacturers = new Array;
$.map(results.data.manufacturers, function(data, item){
var group;
group = {
manufacturer_id: data.Manufacturer.id,
manufacturer: data.Manufacturer.manufacturer
};
manufacturers.push(group);
});
typeahead.process(manufacturers);
}
});
},
property: 'name',
items:11,
onselect: function (obj) {
}
});
trên các lĩnh vực url tôi thêm
window.location.origin
để tránh bất kỳ vấn đề như đã thảo luận về một câu hỏi
Ngoài ra trước khi tôi là sử dụng $.each()
và sau đó quyết định sử dụng $.map()
như được đề xuất Tomislav Markovski trong một similar question
Bất cứ ai cũng có ý tưởng tại sao tôi tiếp tục gặp vấn đề này ?!
Cảm ơn bạn
Bạn đã cố gắng gỡ lỗi mã JavaScript bằng cách sử dụng Firebug hoặc Công cụ nhà phát triển F12 của IE để tìm chính xác nơi nó đang cố gắng gọi 'toLowerCase()'? –
@Cory sử dụng công cụ Kiểm tra Google Chrome Tôi nhận được thông báo lỗi trên dòng mã khởi động twitter 1664 Tương đương với dòng 124 trên [ngã ba] (https://raw.github.com/gist/1866577/dd58c66be9dcb5b770e7f51a6cff324bec856021/bootstrap- typeahead.js) – mmoscosa
@mmoscosa trong Công cụ dành cho nhà phát triển Chrome nhiều lỗi javascript có trình đơn thả xuống với các lỗi khác bên trong và một trong những lỗi đó là dòng trong mã của bạn mà lỗi đó xuất hiện. Lỗi được liên kết với một cái gì đó trong bootstrap, nhưng nơi mà lỗi thực sự xuất hiện là trong mã của riêng bạn. –