ما هي الطريقة الصحيحة لتحديث جميع عناصر الصفحة المقدمة عبر Ajax؟

StackOverflow https://stackoverflow.com/questions/2342930

  •  23-09-2019
  •  | 
  •  

سؤال

لدي صفحة معقدة يتم تقديمها بواسطة PHP وأرغب في الحفاظ على جميع عناصر الصفحة حتى الآن عبر Ajax Long Solling. هل هناك نوع من طريقة عامة / ذكية لتصميم بنية تحتية لدعم هذا دون الحاجة إلى تحديد كل عنصر يدويًا لتحديثه؟ مجرد البحث عن الأفكار. شكرًا!

هل كانت مفيدة؟

المحلول

باستخدام jQuery ، أود أن أرسل قائمة مفصولة بفاصلة من محددات jQuery لتحديث الخادم. سيستجيب الخادم في النهاية من خلال قراءة هؤلاء المختارين وإنتاج HTML لملء العناصر التي تتوافق مع المختارين:

$.get("/updater", { elementsToUpdate: "#someDiv,#someTable,#someOtherElement"}, function(json) {
      $.each(json, function(k, v) {

        // the key is the selector, the value is the 
        // HTML to set to that (or those) element(s):
        $(k).html(v);
      });    
}, "json"); // we are expecting the server to return JSON

سيستجيب الخادم عن طريق إرسال JSON إلى العميل بالهيكل التالي:

 {"#someDiv":"this is some HTML to fill up div with ID someDiv","#someOtherElement":"here is some more HTML","#someTable":"here is some more HTML"}

نصائح أخرى

ربما أضف فئة خاصة إلى جميع العناصر التي سيتم تحديثها عبر Ajax ، ويمكنك أيضًا تشفير بيانات إضافية في بعض السمات الأخرى على سبيل المثال

<a class="ajaxUpdate" data="{'a':'json or whatever', 'put whatever here':'ok'}">test</a>

ثم مع jQuery ، يمكنك بسهولة سحب هذه البيانات وتقييمها ، واستخدامها في Ajax

يمكنك استخدام صفحات جزء ويب وتخصيصها من خلال SharePoint Designer، لكن التخصيصات الأكثر تقدما من الصفحات من خلال Design Manager غير متاح للأسف في مؤسسة SharePoint 2013.

حافظ على بنية عناصر الصفحات الخاصة بك كبيانات خاصة ولديها العناصر العامة لتحديثها

var page = (function(){
    var private_data = {
    //json
    };

    return {
        workOnData : function(){//process the data}

    }
})()

هذه طريقة جيدة يمكنك الحفاظ على بيانات صفحاتك آمنة وسلسة.

حسب سؤالك، أستطيع أن أرى أنك قمت بإنشاء فئتين وهي

  1. version.class
  2. open.class

    أين تحصل على فئة "Titlescreen"؟

    لديك طريقة رئيسية فقط في الإصدار. انقر فوق. لذلك، يمكن أن تكون الطريقة الرئيسية للإصدار. لا يمكن إلا أن تكون نقطة الدخول فقط.

    يمكنك تشغيل البرنامج في مثل ما يلي:

    إصدار جافا titlescreen

    titlescreen يمكن أن تكون مدخلات هذا البرنامج.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top