نظرًا لأن لدي نظام إدارة محتوى ناضجًا نسبيًا، لم أتخلى أبدًا عن ASP، وكنت أرغب دائمًا في إعادة كتابته باستخدام .net، ولكن هذه قصة لوقت آخر. jqGrid هو إطار عمل DataGrid ممتاز يعتمد على jQuery، ويجب أن يكون الجميع على دراية به. هناك القليل جدًا من المعلومات المستندة إلى ASP على الإنترنت، وسأقدم واحدة منها.
، فئة json لـ jqGrid: يبدو أن هذا الرمز قد تم تحويله من بعض PHP في منتدى الموقع الرسمي، فنحن نحفظه باسم json.asp ونلصق الكود:
انسخ رمز الكود كما يلي:
<%
Response.Charset=utf-8
'---------------------------------------
"فئة JSONClass."
قم بتحويل نتيجة تنفيذ عبارة التحديد إلى JSON
'--------------------------------------------
ClassJSONClass
'حدد سمات الفصل، الافتراضي هو خاص
Dim SqlString ' يستخدم لتعيين التحديد
Dim JSON 'اسم كائن JSON الذي تم إرجاعه
Dim DBConnection 'كائن الاتصال بقاعدة البيانات
'الطرق العامة التي يمكن استدعاؤها خارجيًا
الوظيفة العامة GetJSON()
روبية خافتة
عودة خافتة
خافت أنا
سجل واحد خافت
'الحصول على البيانات
تعيين Rs = Server.CreateObject (ADODB.Recordset)
Rs.open SqlString،DBConnection،1،1
إذا كانت الصفحة<> إذن
صفحة = سينت (صفحة)
إذا كانت الصفحة <1 ثم الصفحة = 1
إذا كان epage>rs.pagecount ثم epage=rs.pagecount
آخر
الصفحة = 1
نهاية إذا
rs.pagesize = الصفوف
rs.absolutepage = epage
"إنشاء سلسلة JSON
إذا كان Rs.eof=خطأ وRs.Bof=خطأ إذن
returnStr={ الإجمالي: & rs.pagecount &، الصفحة: & الصفحة &، السجلات: & rs.recordcount &، الصفوف:[
لـ j=0 إلى rs.pagesize-1
إذا كان rs.bof أو rs.eof ثم الخروج ل
'------
'oneRecord = {id: & chr(34) &Rs.Fields(0).Value&chr(34)&,cell:[& chr(34) &Rs.Fields(0).Value&chr(34)&,
oneRecord = {id: & chr(34) &Rs.Fields(0).Value&chr(34)&,cell:[& chr(34) &Rs.Fields(0).Value&chr(34)&,
لـ i=1 إلى Rs.Fields.Count -1
'oneRecord=oneRecord & chr(34) &Rs.Fields(i).Name&chr(34)&:
oneRecord=oneRecord & chr(34) &Rs.Fields(i).Value&chr(34) &,
التالي
'بعد إزالة الحقل الأخير من السجل،
oneRecord=left(oneRecord,InStrRev(oneRecord,,)-1)
oneRecord=oneRecord & ]},
'-------------
returnStr=returnStr & oneRecord
Rs.MoveNext
التالي
'بعد إزالة كافة صفائف السجل،
returnStr=left(returnStr,InStrRev(returnStr,,)-1)
returnStr=returnStr & ]}
نهاية إذا
روبية قريبة
تعيين روبية = لا شيء
GetJSON=returnStr
وظيفة النهاية
"طريقة خاصة، تستخدم في الفصل."
فحص الوظيفة الخاصة ()
وظيفة النهاية
'
نهاية الفصل
%>
2. قم بإنشاء ملف asp الذي يعرض البيانات، مثل: list.asp، ويكون الكود كما يلي
انسخ رمز الكود كما يلي:
<!--#include file=conn.asp -->
<!--#include file=json.asp -->
<%
صفحة خافتة، صفوف، سيدكس، سورد
page = request.QueryString(page) 'page
الصفوف = request.QueryString(rows) 'pagesize
sidx = request.QueryString(sidx) 'الطلب حسب ؟؟
الترتيب = request.QueryString (الفرز)
إذا كانت الصفحة = ثم الصفحة = 1 النهاية إذا
إذا كانت الصفوف = ثم الصفوف = 10 تنتهي إذا
إذا كان sidx = ثم sidx = نهاية المعرف إذا
إذا sord = ثم sord = asc end if
خافت strSearchOn، strField، strFieldData، strSearchOper، strWhere
strSearchOn = طلب(_search)
إذا (strSearchOn = صحيح) ثم
strField = طلب (حقل البحث)
إذا (strField = id أو strField = Title أو strField = NickName) إذن
strFieldData = طلب (سلسلة البحث)
strSearchOper = طلب(searchOper)
"أفعل أين."
strWhere = أين & strField
حدد حالة strSearchOper
الحالة bw : 'ابدأ بـ
strFieldData = strFieldData &٪
strWhere = strWhere & LIKE ' & strFieldData & '
الحالة المعادلة: "متساوية".
إذا (IsNumeric(strFieldData)) إذن
strWhere = strWhere & = & strFieldData
آخر
strWhere = strWhere & = ' & strFieldData & '
نهاية إذا
الحالة ني: "ليست متساوية".
إذا (IsNumeric(strFieldData)) إذن
strWhere = strWhere & <> & strFieldData
آخر
strWhere = strWhere & <> '& strFieldData &'
نهاية إذا
الحالة lt: "أقل من".
إذا (IsNumeric(strFieldData)) إذن
strWhere = strWhere & < & strFieldData
آخر
strWhere = strWhere & <'& strFieldData &'
نهاية إذا
الحالة لو: "أقل أو يساوي".
إذا (IsNumeric(strFieldData)) إذن
strWhere = strWhere & <= & strFieldData
آخر
strWhere = strWhere & <= '& strFieldData &'
نهاية إذا
الحالة GT: "أكبر من."
إذا (IsNumeric(strFieldData)) إذن
strWhere = strWhere & > & strFieldData
آخر
strWhere = strWhere & > '& strFieldData &'
نهاية إذا
الحالة ge: "أكبر أو يساوي".
إذا (IsNumeric(strFieldData)) إذن
strWhere = strWhere & >= & strFieldData
آخر
strWhere = strWhere & >= '& strFieldData &'
نهاية إذا
حالة جديدة : 'انتهى بـ
strWhere = strWhere & LIKE '% & strFieldData & '
الحالة cn : 'يحتوي على
strWhere = strWhere & LIKE '% & strFieldData & %'
إنهاء التحديد
انتهي إذا
نهاية إذا
server.ScriptTimeout=9000
خافت أ
تعيين = JSONClass جديد
a.Sqlstring=اختر المعرف،العنوان،الاسم المستعار،Pwd،LastLoginTime من المسؤول&strWhere& &الطلب بواسطة & sidx & & sord
a.dbconnection=conn
الاستجابة.الكتابة (a.GetJSon())
كون.إغلاق ()
مجموعة كون = لا شيء
%>
رمز البحث مغطى فيه. هذا ينفذ بشكل أساسي القراءة أما بالنسبة لملف التحرير في jqGrid، فإننا نسميه Edit.asp.
انسخ رمز الكود كما يلي:
<%الخيار الصريح%>
<!--#include file=config.asp-->
<%
خافت strOper، strID، strNickName، strTitle، strPwd
strOper = طلب (التشغيل)
strID = استبدال(الطلب(المعرف)،'،'')
strTitle = استبدال(Request(Title),','')
strNickName = استبدال(Request(NickName),','')
strPwd = استبدال(Request(Pwd),','')
حدد حالة strOper
إضافة الحالة: "إضافة سجل".
strSQL = أدخل في قيم المسؤول (العنوان، الاسم المستعار، الأشخاص ذوي الإعاقة، LastLoginTime) ('&strTitle&'، '&strNickName&'، '&strPwd&'،Now())
تحرير الحالة: "تحرير السجل".
strSQL = تحديث مجموعة الإدارة />الحالة del: 'حذف السجل
strSQL = حذف من المسؤول حيث المعرف = &strID
إنهاء التحديد
'الاستجابة.اكتب strSQL
خافت strSQL، آر إس
كولوبيندب ()
تعيين rs = Conn.Execute(strSQL)
استدعاء CloseDB()
%>
هذا هو كود الواجهة الأمامية Index.html
انسخ رمز الكود كما يلي:
<!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd>
<html xmlns=http://www.w3.org/1999/xhtml>
<الرأس>
<meta http-equiv=Content-Type content=text/html;
<title>ASP_jqGrid_Test</title>
<link rel=stylesheet type=text/css href=jquery-ui-1.7.2.custom.css/>
<link rel=stylesheet type=text/css href=jqgrid.css/>
<link rel=stylesheet type=text/css href=ui.multiselect.css/>
<script type=text/javascript src=js/jquery.js></script>
<script type=text/javascript src=js/cn.js></script>
<script type=text/javascript src=js/jqGrid.js></script>
</الرأس>
<الجسم>
<معرف الجدول=فئة DataGrid=التمرير></الجدول>
<div id=pager class=scroll style=text-align:center;></div>
</الجسم>
</html>
<نوع البرنامج النصي=نص/جافا سكريبت>
مسج(#DataGrid).jqGrid({
عنوان URL: "list.asp"،
نوع البيانات: جيسون،
colNames:['ID'،'حساب المسؤول'،'لقب المسؤول'،'كلمة المرور'،'آخر وقت لتسجيل الدخول']،
نموذج العمود :[
{
الاسم: "معرف"،
الفهرس:'معرف'،
العرض: 50
},
{
الاسم: "العنوان"،
الفهرس:'العنوان'،
قابل للتحرير: صحيح،
قواعد التحرير:{
المطلوب: صحيح
}
},
{
الاسم: "الاسم المستعار"،
الفهرس:"الاسم المستعار"،
قابل للتحرير: صحيح،
قواعد التحرير:{
المطلوب: صحيح
}
},
{
الاسم: "Pwd"،
الفهرس:'Pwd'،
قابل للتحرير: صحيح،
نوع التحرير: "كلمة المرور"،
مخفي: صحيح،
خيارات التحرير:{
الحجم: 20
},
قواعد التحرير:{
تحرير مخفي: صحيح
}
},
{
الاسم: "LastLoginTime"،
الفهرس: "LastLoginTime"،
محاذاة: "يمين"،
قواعد التحرير:{
المطلوب: صحيح
}
} ]، تسمية توضيحية:قائمة المسؤولين،
إيمباث:'/الصور',
التحديد المتعدد: صحيح،
رقم الصف: 20،
قائمة الصفوف:[10،20،30]،
بيجر: مسج ('#بيجر')،
اسم الفرز: "المعرف"،
عرض السجلات: صحيح،
الترتيب: وصف،
الارتفاع: 400،
العرض: 600،
تحرير:edit.asp
});
$('#DataGrid').navGrid('#pager',{
تحديث: صحيح،
تعديل: صحيح،
إضافة: صحيح،
ديل: صحيح،
البحث : صحيح
نص البحث: بحث،
تحرير النص: تغيير، إضافة نص: إضافة، نص دلت: حذف
});
</script>
jqGrid، أشياء جيدة ~~