يدعم DataGrid من Easyui ترقيم ترقيم الخادم ، ولكن هناك معلومات رسمية أقل. ما يلي يلخص آليتين ترقيم ترقيم من جانب الخادم من DataGrid. أحدهما هو آلية DataGrid الافتراضية ، والآخر هو استخدام AJAX للحصول على البيانات وملبئ بيانات DATAGRID ، والتي يمكن استخدامها وفقًا للموقف.
1: استخدم آلية DataGrid الافتراضية
وراء الكواليس:
سوف JSonResult getQuestionUnit () {// easyi dataGrid نفسها تمرير صفوف وصفحة int pagesize = convert.toint32 (طلب ["الصفوف"]) ؛ int pagenum = convert.toint32 (request ["page"]) ؛ var dal = new qsquestionunitdal () ؛ var QuestionUnits = dal.getList ("" ، pagenum -1 ، pagesize) ؛ // يجب أن تتضمن القيمة التي يتم إرجاعها إلى المقدمة Total و Rows var easyUipages = New Dictionary <String ، Object> () ؛ EasyUipages.add ("Total" ، QuestionUnits.Firstordefault () == null؟ 0: QuestionUnits.Firstordefault (). reqcount) ؛ easyUipages.add ("الصفوف" ، QuestionUnits) ؛ إرجاع JSON (easyUipages ، JsonRequestbehavior.allowget) ؛ ) ]] ، ترقيم: صحيح ، rownumbers: صحيح ، pagelist: [3 ، 6]}) ؛ var p = ('#dgd'). datagrid ('getPager') ؛ ('#dgd') Total {pages} pages '، displaymsg:' Total {Total} data '،}) ؛تحتاج إلى وضع ('#DGD'). طريقة dataGrid إلى
$ (function () {}) ؛إذا حاولت الاتصال بـ ('#DGD'). طريقة dataGrid من خلال طرق JS الأخرى ، فلن تحصل على نتيجة الترحيل الصحيحة.
كما ترون ، تم التعليق على عنوان URL للسطر في رمز JS أعلاه. إذا لم نكن بحاجة إلى إجراء عمليات أخرى ونخطط للاستعلام عن البيانات بمجرد تحميل الصفحة ، لا يمكننا التعليق على الرمز. ومع ذلك ، في كثير من الأحيان ، في بعض الأحيان ، تحتاج معلمات URL ، مثل قيمة Arg1 ، إلى إجراء عمليات معينة على الواجهة ، ثم الحصول عليها من خلال رمز JS. في هذا الوقت ، يجب التعليق على عنوان URL وتعيينه في أماكن أخرى ، مثل:
var step1ok = function () {$ ('#dgd'). datagrid ({url: "@viewbag.domain/paper/getQuestionUnit؟ arg1 = xxx" ،}) ؛} ؛في الكود أعلاه ، يمكننا أن نفترض أنه يتم النقر على زر في الواجهة ويتم استدعاء طريقة Step1ok ، ثم يتم الاستعلام عن البيانات إلى عنوان URL وتقديمها إلى واجهة المستخدم.
اثنان: استخدم AJAX للحصول على البيانات وملء DataGrid
إذا كنا نريد متابعة مرونة أكبر ، لا يمكننا استخدام الآلية الافتراضية لـ DataGrid ، أي تحديد عنوان URL للحصول على البيانات ، ولكن استخدم AJAX للحصول على البيانات وملء بيانات البيانات. وبهذه الطريقة ، لا تزال بحاجة إلى وضع ('#DGD'). طريقة datagrid إلى
$ (function () {}) ؛يبقى رمز الخلفية دون تغيير ، ولكن النقر فوق زر واتصالات الاتصال Step1ok يصبح:
var step1ok = function () {.messager.progress (العنوان: ′ متعة ′ ، msg: ′ loadingData ... ′ ، النص: ′ معالجة ..... ′) ؛ varp = .messager.prog RESS (العنوان: ′ pleaseWaiting ′ ، msg: ′ LoadingData ... ′ ، النص: ′ المعالجة ..... ′) ؛ varp = ('#dgd'). datagrid ('getPager') ؛ $ (p) .pagination ({onselectpage: function (pagenumber ، pagesize) {Alert ('onselectpage pagenumber:' + pagenumber + '، pagesize:' + pagesize) ؛ getData (pagenumber ، pagesize) ؛}}) ؛ getdata (1،3) ؛}عند استدعاء المكالمة الأولى ، سيتم الحصول على 3 قطع من البيانات على الصفحة الأولى:
getData (1،3) ؛
بعد ذلك ، يمكننا أن نرى أنه ، في الوقت نفسه ، أنشأنا أيضًا معالجًا زمنيًا لحدث ترقيم الصفحات ، بحيث عندما تكون الصفحة في يوم آخر ، سنذهب إلى:
getData (pagenumber ، pagesize) ؛
بالإضافة إلى ذلك ، نظرًا لأننا تجاوزنا الآلية الأصلية لـ DataGrid لترقيم الصفحات ، فقد اعتمدنا غلافنا الخاص. messager.progress ، ثم اكتشفنا الغطاء في نجاح أياكس.
طريقة getData كما يلي:
var getData = function (صفحة ، صفوف) {.ajax ({type: "post" ، url: "@viewbag.domain/paper/getQuestionUnit" ، data: url: "@viewbag.domain/paper/getQuestionUnit" ، البيانات: "page =" + page + " //.ما سبق هو الوصف الكامل لطريقتين لترحيل ترقيم تراجع Easyui الذي قدمه لك المحرر. آمل أن يكون ذلك مفيدًا لك. إذا كنت تريد معرفة المزيد ، فيرجى الانتباه إلى موقع Wulin.com!