位置:海鸟网 > IT > JavaScript >

Ajax实现网易相册样式的修改

 普通的Ajax应用,结合javascript对html元素的动态操控,结合而成一个优美的效果。
  
  还是用Ajax.net,设置与前篇文章一样,不再累述。
  代码如下:
  163photoTest.aspx.cs
  using System;
  using System.Data;
  using System.Configuration;
  using System.Collections;
  using System.Web;
  using System.Web.Security;
  using System.Web.UI;
  using System.Web.UI.WebControls;
  using System.Web.UI.WebControls.WebParts;
  using System.Web.UI.HtmlControls;
  using System.Data.SqlClient;
  
  public partial class _163photoTest : System.Web.UI.Page
  {
   protected void Page_Load(object sender, EventArgs e)
   {
   description.Text = GetDescription();
   AjaxPro.Utility.RegisterTypeForAjax(typeof(_163photoTest));
   }
  
   //取数据库里的描述
   protected string GetDescription()
   {
   try
   {
   string strComm = "select photo_description from tab_photo where photo_id=1";
   SqlConnection myConn = new SqlConnection("user id=sa;password=123;Database =test;data source=z;");
   myConn.Open();
   SqlCommand myComm = new SqlCommand(strComm, myConn);
   SqlDataReader myReader = myComm.ExecuteReader();
   myReader.Read();
   return myReader.GetString(0);
   }
   catch
   {
   return "";
   }
   }
  
   [AjaxPro.AjaxMethod]
   //将description保存进数据库
   public bool UpdateDesc(string description)
   {
   try
   {
   string strComm = "update tab_photo set photo_description='" + description + "' where photo_id=1";
   SqlConnection myConn = new SqlConnection("user id=sa;password=123;Database =test;data source=z;");
   myConn.Open();
   SqlCommand myComm = new SqlCommand(strComm, myConn);
   myComm.ExecuteNonQuery();
   return true;
   }
   catch
   {
   return false;
   }
   }
  }
  
  163photoTest.aspx
  <%@ Page Language="C#" AutoEventWireup="true" CodeFile="163photoTest.aspx.cs" Inherits="_163photoTest" %>
  
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
  
  <html xmlns="" >
  <head runat="server">
   <title>无标题页</title>
  <script language="javascript" type="text/javascript">
   function display()
   {
   document.getElementById('descfield').style.display='block';
   document.getElementById('descfield').value = document.getElementById('description').innerText ;
   document.getElementById('description').style.display='none';
   document.getElementById('save').style.display='block';
   }
   var s;
   function UpdateDesc()
   {
   s= document.getElementById("descfield").value;
   document.getElementById("descfield").value="正在保存";
   _163photoTest.UpdateDesc(s,UpdateDesc_callback);
   }
  
   function UpdateDesc_callback(res)
   {
   if (res)
   {
   document.getElementById('description').style.display='block';
   document.getElementById("description").innerText =s;
   document.getElementById('descfield').style.display='none';
   document.getElementById('save').style.display='none';
   }
   }
  </script>
  </head>
  <body onload="document.getElementById('descfield').style.display='none';document.getElementById('save').style.display='none';">
   <form id="form1" runat="server">
   <div id="div1" onmousemove="this.style.backgroundColor='#C0C0FF';" onmouseout="this.style.backgroundColor='';" onclick="display()">
   <asp:Label ID="description" runat="server" Text="Label"></asp:Label>
  
   </div>
   <input type="text" id ="descfield" />
   <input type="button" id="update" value="修改描述" onclick="display()"/>
   <input type="button" id="save" value="保存修改" onclick="UpdateDesc()"/>
   <br />
   </form>
  </body>
  </html>
  
  出处:Coder at the Doorsill——风中聆听 BLOG