Karena saya memiliki CMS yang relatif matang, saya tidak pernah menyerah pada ASP. Saya selalu ingin menulis ulang menggunakan .net, tapi itu cerita untuk lain waktu. jqGrid adalah kerangka DataGrid yang luar biasa berdasarkan jQuery, yang pasti sudah familiar bagi semua orang. Hanya ada sedikit informasi berdasarkan ASP di Internet yang akan saya berikan.
, kelas json untuk jqGrid: Kode ini sepertinya dikonversi dari beberapa PHP di forum situs resmi. Kami menyimpannya sebagai json.asp dan menempelkan kode:
Copy kode kodenya sebagai berikut:
<%
respon.Charset=utf-8
'----------------------------------------
'Kelas Kelas JSON
' Ubah hasil eksekusi pernyataan Select menjadi JSON
'----------------------------------------------
KelasJSONKelas
'Tentukan atribut kelas, defaultnya adalah Pribadi
Redupkan SqlString ' digunakan untuk mengatur Pilih
Redupkan JSON 'Nama objek JSON yang dikembalikan
Redupkan DBConnection 'Koneksi objek ke database
'Metode publik yang bisa dipanggil secara eksternal
Fungsi Publik GetJSON()
redup Rp
redupkan returnStr
redupkan aku
redupkan satuRecord
'Dapatkan datanya
Setel Rs= Server.CreateObject(ADODB.Recordset)
Rs.buka SqlString,DBConnection,1,1
jika halaman<> lalu
epage=cint(halaman)
jika ehalaman<1 maka ehalaman=1
jika epage>rs.pagecount maka epage=rs.pagecount
kalau tidak
halaman=1
berakhir jika
rs.pagesize = baris
rs.absolutepage = halaman
' Hasilkan string JSON
jika Rs.eof=false dan Rs.Bof=false maka
returnStr={ total: & rs.jumlah halaman &, halaman: & halaman &, catatan: & rs.recordcount &, baris:[
untuk j=0 hingga rs.pagesize-1
jika rs.bof atau rs.eof lalu keluar untuk
'------
'oneRecord = {id: & chr(34) &Rs.Fields(0).Nilai&chr(34)&,sel:[& chr(34) &Rs.Fields(0).Nilai&chr(34)&,
oneRecord = {id: & chr(34) &Rs.Fields(0).Nilai&chr(34)&,sel:[& chr(34) &Rs.Fields(0).Nilai&chr(34)&,
untuk i=1 hingga Rs.Fields.Count -1
'oneRecord=oneRecord & chr(34) &Rs.Fields(i).Nama&chr(34)&:
oneRecord=oneRecord & chr(34) &Rs.Fields(i).Nilai&chr(34) &,
Berikutnya
'Setelah menghapus bidang catatan terakhir,
oneRecord=kiri(oneRecord,InStrRev(oneRecord,,)-1)
satuRekaman=satuRekaman & ]},
'-------------
returnStr=returnStr & satuCatatan
Rs.MoveNext
Berikutnya
' Setelah menghapus semua array rekaman,
returnStr=kiri(returnStr,InStrRev(returnStr,,)-1)
returnStr=returnStr & ]}
berakhir jika
Rs.tutup
atur Rs=Tidak Ada
DapatkanJSON=returnStr
Fungsi Akhir
'Metode pribadi, digunakan di kelas
Pemeriksaan Fungsi Pribadi()
Fungsi Akhir
'
Kelas Akhir
%>
2. Buat file asp yang menampilkan data seperti list.asp, kodenya seperti berikut
Copy kode kodenya sebagai berikut:
<!--#include file=sambungan.asp -->
<!--#include file=json.asp -->
<%
halaman redup, baris, sidx, urutkan
halaman = permintaan.QueryString(halaman) 'halaman
baris = permintaan.QueryString(baris) 'ukuran halaman
sidx = request.QueryString(sidx) 'dipesan paling lambat ??
sord = permintaan.QueryString(sord)
jika halaman= maka halaman = 1 berakhir jika
jika baris = maka baris = 10 diakhiri jika
jika sidx = maka sidx = id berakhir jika
jika sord = maka sord =asc berakhir jika
Redupkan strSearchOn, strField, strFieldData, strSearchOper, strWhere
strSearchOn = Permintaan(_pencarian)
Jika (strSearchOn = true) Lalu
strField = Permintaan(Field pencarian)
Jika (strField = id Atau strField = Judul Atau strField = Nama Panggilan) Lalu
strFieldData = Permintaan(searchString)
strSearchOper = Permintaan(searchOper)
'membangun di mana
strWhere = Dimana & strField
Pilih Kasus strSearchOper
Kasus bw : 'Mulai Dengan
strFieldData = strFieldData &%
strWhere = strWhere & SUKA ' & strFieldData & '
Persamaan kasus : 'Setara
Jika(IsNumerik(strFieldData)) Kemudian
strDimana = strDimana & = & strFieldData
Kalau tidak
strDimana = strDimana & = ' & strFieldData & '
Akhiri Jika
Kasus ne: 'Tidak Sama
Jika(IsNumerik(strFieldData)) Kemudian
strWhere = strWhere & <> & strFieldData
Kalau tidak
strWhere = strWhere & <> '& strFieldData &'
Akhiri Jika
Kasus lt: 'Kurang dari
Jika(IsNumerik(strFieldData)) Lalu
strDimana = strDimana & < & strFieldData
Kalau tidak
strDimana = strDimana & <'& strFieldData &'
Akhiri Jika
Kasus le: 'Kurang Atau Sama Dengan
Jika(IsNumerik(strFieldData)) Lalu
strDimana = strDimana & <= & strFieldData
Kalau tidak
strWhere = strWhere & <= '& strFieldData &'
Akhiri Jika
Kasus gt: 'Lebih Besar Dari
Jika(IsNumerik(strFieldData)) Lalu
strWhere = strWhere & > & strFieldData
Kalau tidak
strDimana = strDimana & > '& strFieldData &'
Akhiri Jika
Kasus ge: 'Lebih Besar Atau Setara
Jika(IsNumerik(strFieldData)) Lalu
strDimana = strDimana & >= & strFieldData
Kalau tidak
strDimana = strDimana & >= '& strFieldData &'
Akhiri Jika
Kasus ew : 'Akhiri Dengan
strWhere = strWhere & LIKE '% & strFieldData & '
Kasus cn : 'Berisi
strWhere = strWhere & LIKE '% & strFieldData & %'
Pilihan Akhir
Berakhir jika
Akhiri Jika
server.ScriptTimeout=9000
redup a
atur a=Kelas JSON baru
a.Sqlstring=Pilih id,Judul,Nama Panggilan,Pwd,Waktu Masuk Terakhir Dari Admin&strDi Mana& &dipesan berdasarkan & sidx & & sord
a.dbconnection=sambungan
respon.Tulis(a.GetJSon())
samb.close()
setel sambungan = tidak ada
%>
Kode pencarian tercakup di dalamnya. Ini pada dasarnya mengimplementasikan pembacaan. Sedangkan untuk file editurl di jqGrid, kami menyebutnya edit.asp Kodenya adalah sebagai berikut:
Copy kode kodenya sebagai berikut:
<%Opsi Eksplisit%>
<!--#termasuk file=config.asp-->
<%
Redupkan strOper, strID, strNickName, strTitle, strPwd
strOper = Permintaan(oper)
strID = Ganti(Permintaan(Id),','')
strJudul = Ganti(Permintaan(Judul),','')
strNickName = Ganti(Permintaan(Nama Panggilan),','')
strPwd = Ganti(Permintaan(Pwd),','')
Pilih Kasus strOper
Penambahan kasus: 'Tambahkan Catatan
strSQL = Masukkan ke Admin (Judul, Nama Panggilan, Pwd,WaktuLogin Terakhir) Nilai('&strTitle&', '&strNickName&', '&strPwd&',Sekarang())
Pengeditan kasus: 'Edit Catatan
strSQL = Perbarui Set Admin />Kasus del: 'Hapus Catatan
strSQL = Hapus Dari Admin Dimana id = &strID
Pilihan Akhir
'respons. Tulis strSQL
Redupkan strSQL, rs
PanggilanOpenDB()
Setel rs = Sambung.Jalankan(strSQL)
Panggil CloseDB()
%>
Ini adalah kode frontend index.html
Copy kode kodenya sebagai berikut:
<!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>
<kepala>
<meta http-equiv=Jenis Konten konten=teks/html; charset=utf-8 />
<title>ASP_jqGrid_Test</title>
<link rel=stylesheet type=teks/css href=jquery-ui-1.7.2.custom.css/>
<link rel=stylesheet type=teks/css href=jqgrid.css/>
<link rel=stylesheet type=teks/css href=ui.multiselect.css/>
<skrip tipe=teks/javascript src=js/jquery.js></script>
<skrip tipe=teks/javascript src=js/cn.js></script>
<skrip tipe=teks/javascript src=js/jqGrid.js></script>
</kepala>
<tubuh>
<tabel id=DataGrid class=scroll></tabel>
<div id=pager class=scroll style=text-align:center;></div>
</tubuh>
</html>
<tipe skrip=teks/javascript>
jQuery(#DataGrid).jqGrid({
url:'daftar.asp',
tipe data: json,
colNames:['ID','Akun Administrator','Nama panggilan Administrator','Kata Sandi','Waktu login terakhir'],
model warna :[
{
nama: 'Id',
indeks:'Id',
lebar:50
},
{
nama: 'Judul',
indeks:'Judul',
dapat diedit: benar,
sunting aturan:{
diperlukan: benar
}
},
{
nama:'Nama Panggilan',
indeks:'Nama Panggilan',
dapat diedit: benar,
sunting aturan:{
diperlukan: benar
}
},
{
nama: 'Pwd',
indeks:'Pwd',
dapat diedit: benar,
tipe edit:'kata sandi',
tersembunyi: benar,
opsi edit:{
ukuran: 20
},
sunting aturan:{
sunting tersembunyi: benar
}
},
{
nama:'Waktu Masuk Terakhir',
indeks:'Waktu Masuk Terakhir',
sejajar: 'kanan',
sunting aturan:{
diperlukan: benar
}
} ], keterangan:Daftar Administrator,
jalur img:'/gambar',
pilih banyak: benar,
nomor baris:20,
Daftar baris:[10,20,30],
pager: jQuery('#halaman'),
nama urutkan: 'Id',
lihat catatan: benar,
urutan:desk,
tinggi:400,
lebar:600,
editurl:edit.asp
});
$('#DataGrid').navGrid('#pager',{
menyegarkan: benar,
sunting: benar,
tambahkan: benar,
del: benar,
pencarian: benar,
teks pencarian: pencarian,
editteks: ubah, tambahteks: tambah, delteks: hapus
});
</skrip>
jqGrid, barang bagus~~