打印本文 打印本文 关闭窗口 关闭窗口
ASP模仿asp.net的DataGrid
作者:武汉SEO闵涛  文章来源:敏韬网  点击数2969  更新时间:2009/4/23 10:40:54  文章录入:mintao  责任编辑:mintao
amp;"'''' "
     Case "number","int","bigint","tinyint"
      strsql = strsql & nItems(i).field & "=" & Request(nItems(i).field) & " "
     Case "date","time","datetime"
      strsql = strsql & nItems(i).field & "=convert(datetime,''''" & Request(nItems(i).field)&"'''',102) "
     Case else
      strsql = strsql & nItems(i).field & "=''''" & Request(nItems(i).field)&"'''' "
     End select
    j=j+1  
    End if
   
   Next
   strsql = strsql & " where " & UniqueField &" = "& uniquekey
   set rst = Server.CreateObject("adodb.recordset")
   rst.Open strsql,connstr
   ''''rst.Close
   set rst = nothing
   set strsql = nothing
  End if
  
  If dg_action="delete" then
   strsql = ""
   strsql = "delete  from " & table & " where  " & UniqueField &" = "& uniquekey
   response.Write strsql
   set rst = Server.CreateObject("adodb.recordset")
   rst.Open strsql,connstr
   ''''rst.Close
   set rst = nothing
  End if
  
  IF dg_action = "addnew" and isAddnew = 1 then
   ''''dim strsql
   set rst = Server.CreateObject("adodb.recordset")
   rst.open table,connstr,1,3,2
   rst.addnew
   j=0
   For i = 0 to index - 1
    if nItems(i).Columntype<>"edit" and nItems(i).Columntype <> "delete" and not nItems(i).readonly and nItems(i).field<>uniquefield then
     if j <> 0 then strsql = strsql & ","
     Select case nItems(i).DataType
     Case "text"
      rst(nItems(i).field) =   Request(nItems(i).field)
     Case "number","int","bigint","tinyint"
      rst(nItems(i).field) =   Request(nItems(i).field)
     Case "date","time","datetime"
      rst(nItems(i).field) =   Request(nItems(i).field)
     Case else
      rst(nItems(i).field) =   Request(nItems(i).field)
     End select
    j=j+1  
    End if
   Next
   rst.update
   set rst = nothing
  End if
  
  
  rs.Open strSQLString,connstr,1,1
  
  strTable= "<table border=" & intBorderWidth & " bordercolordark=" & strBorderColorDark & " bordercolorlight=" & strbordercolorlight & "class=" &cssclass & " cellspacing=0>" ''''加样式
  strTable = strTable & "<form action=" & formURL & " name=""gridform"" method=post>"
  if PagePosition="up" or PagePosition="updown" then strTable = strTable & "<tr><td colspan="& index &">"& page(rs.PageCount,Pagenumber,currPage )&"</td></tr>"
   strTable = strTable & "<tr bgcolor=" & strHeadBackgroudColor & ">"
   for i = 0 to index - 1
     if nItems(i).Title<>""  then
      strTable = strTable & "<td " & nItems(i).HTMLstr & ">" & nItems(i).Title &"</td>"
     else
      strTable = strTable & "<td " & nItems(i).HTMLstr & ">" & rs.Fields(i).Item.Name  &"</td>"
     end if
 
   Next
   strTable = strTable & "</tr>"
   if cint(currPage) > cint(rs.PageCount) then currPage = rs.PageCount
   intPage = Pagesize
   rs.PageSize = pagesize
   rs.AbsolutePage = currPage
   
  do while not rs.eof and intPage > 0
   intPage = intPage - 1
   dbuniquekey = rs(uniquefield)
   If intPage mod 2  then
    strTable = strTable & "<tr>"
   Else
    strTable = strTable & "<tr "& strAlternateStyle &">"
   End if
   ''''response.Write len(dg_action)>0 and int(dbuniquekey) = int(uniquekey)
   if dg_action ="edit"  and int(dbuniquekey) = int(uniquekey)  then
    for i = 0 to index - 1
     if nItems(i).Columntype<>"edit" and nItems(i).Columntype <> "delete" and not nItems(i).readonly and nItems(i).field<>uniquefield then
      strTable = strTable & "<td " & nItems(i).HTMLstr &"><input type=Text name=""" & rs.Fields(nItems(i).field).Name &""" value=""" & rs(nItems(i).field) &"""></td>"
     else
      Select case lcase(nItems(i).Columntype)
      Case "label"
       strTable = strTable & "<td "& nItems(i).HTMLstr &">" & rs(nItems(i).field) &"</td>"
      Case "radio"
      
      Case "image"
      
      Case "checkbox"
      
      Case "textbox"
       strTable = strTable & "<td " & nItems(i).HTMLstr &"><input type=text name=""" & rs.Fields(i).Name &""" value=" & rs(nItems(i).field) &"></td>"
      Case "link"
      
      Case "edit"
       if UniqueField="" then ErrorMsg="UniqueField not set"
       if dg_action = "edit" then
        strTable = strTable & "<td "&nItems(i).HTMLstr &"><a href=""JavaScript:document.gridform.submit()"">"&nItems(i).UpdateCommandText&"</a> <a href="&actionURL&">"&nItems(i).CancelCommandText&"</a></td>"
       else
        strTable = strTable & "<td "&nItems(i).HTMLstr &"><a href="&actionURL&"&dg_action=edit&uniquekey=" & rs(UniqueField) &">"&nItems(i).EditCommandText&"</a></td>"
       end if
      Case "delete"
       if UniqueField="" then ErrorMsg="UniqueField not set"
       strTable = strTable & "<td "&nItems(i).HTMLstr &"><a href="&actionURL&"&dg_action=delete&uniquekey=" & rs(UniqueField) &">"&nItems(i).DeleteCommandText&"</a></td>"
      Case "update"
      
      Case else
       strTable = strTable & "<td " & nItems(i).HTMLstr & ">" & rs(nItems(i).field) & "</td>"
      End select
     end if
     
    Next
   else 
&nb

上一页  [1] [2] [3] [4]  下一页

打印本文 打印本文 关闭窗口 关闭窗口