مصدر بيانات مسج المساعد الإكمال التلقائي
-
10-07-2019 - |
سؤال
وأستخدمه المساعد الإكمال التلقائي مسج لنموذج بحث بسيط. أواجه مشكلة في تحويل البيانات بلدي كائن JSON في صفيف للاستخدام مع ميزة الإكمال التلقائي.
وبلدي كود:
var listOfOrderedByNames = getAutocompleteData();
$('#OrderedBy').autocomplete(listOfOrderedByNames);
function getAutocompleteData() {
var output;
$.getJSON('AJAX/GetOrderedByNames', function(data) {
$.each(data, function(index, optionData) {
output += optionData + "|";
});
});
return output;
}
وبياناتي JSON التي يتم إرجاعها يبدو مثل هذا:
["Jimmy","John", "Etc",null]
لسبب ما تبدو مثل ما أنا الحصول على العودة من تلك الوظيفة getAutocompleteData
هو سلسلة فارغة وأنا لا أعرف ما هو الخطأ.
الرجاء المساعدة!
المحلول
وانها ل$.getJSON
غير المتزامن. بمجرد ارسال طلب، لا تزال وظيفة getAutocompleteData()
بك المنفذة، شيئا العودة.
ويجب أن ترفق كل شيء في وظيفة رد كنت تمر لطريقة getJSON:
var output;
$.getJSON('AJAX/GetOrderedByNames', function(data) {
var output = "";
$.each(data, function(index, optionData) {
output += optionData + "|";
});
$('#OrderedBy').autocomplete(output);
});
نصائح أخرى
وحاول تغيير خط var ouput;
إلى var output = '';
لا تنتمي إلى StackOverflow