jQuery ajax - طريقة getJSON()
مثال
استخدام طلب AJAX للحصول على بيانات JSON وعرض النتائج:
$("button").click(function(){ $.getJSON("demo_ajax_json.js",function(result){ $.each(result, function(i, field){ $("div").append(field + " "); ); ); );
التعريف والاستخدام
تحميل بيانات JSON عبر طلب HTTP GET.
في jQuery 1.2، يمكنك تحميل بيانات JSON من مجال آخر باستخدام شكل JSONP من وظائف التلقي، مثل "myurl?callback=?". ستحل jQuery ? بشكل تلقائي باسم الدالة الصحيح، لتنفيذ وظيفة التلقي. ملاحظة: سيتم تنفيذ الكود أدناه قبل تنفيذ وظيفة التلقي.
النحو
jQuery.getJSON(url,data,success(data,status,xhr)})
المعلمات | الوصف |
---|---|
url | مطلوب. يحدد أي URL سيتم إرسال الطلب إليها. |
data | اختياريًا. يحدد البيانات التي يتم إرسالها إلى الخادم مع الطلب. |
success(data,status,xhr)} |
اختياري. يحدد وظيفة تشغيلها عند نجاح الطلب. المعلمات الإضافية:
|
شرح مفصل
هذه الوظيفة هي Ajax مختصرة، متساوية للوظيفة:
$.ajax({ url: url, data: data, success: callback, dataType: json );
بيانات يتم إرسالها إلى الخادم يمكن إضافتها كنص استعلام بعد URL. إذا data إذا كان قيمة المعلمة هي جسم (خريطة)، يتم تحويلها إلى سلسلة وتمريرها عبر الترميز URL قبل إضافتها إلى URL.
تمريرها إلى callback البيانات العائدة، يمكن أن تكون جسم JavaScript، أو مصفوفة معينة بـ JSON، وتستخدم طريقة $.parseJSON() لتحليلها.
مثال
من test.js تحميل بيانات JSON وعرض بيانات ميدان name في بيانات JSON:
$.getJSON("test.js", function(json){ alert("JSON Data: " + json.users[3].name); );
مزيد من الأمثلة
مثال 1
من API JSONP لـ Flickr تحميل 4 صور جديدة عن القطط:
كود HTML:
<div id="images"></div>
كود jQuery:
$.getJSON("http://api.flickr.com/services/feeds/photos_public.gne? tags=cat&tagmode=any&format=json&jsoncallback=?", function(data){ $.each(data.items, function(i,item){ $("<img/>").attr("src", item.media.m).appendTo("#images"); إذا (i == 3) عودة false; ); );
مثال 2
من test.js تحميل بيانات JSON، إضافة معلمات، عرض بيانات اسم ميدان JSON:
$.getJSON("test.js", { name: "Bill", time: "2pm" }, function(json){ alert("JSON Data: " + json.users[3].name); );