Heim  >  Artikel  >  Backend-Entwicklung  >  asp.net Ajax implementiert keinen Aktualisierungsbestätigungscode

asp.net Ajax implementiert keinen Aktualisierungsbestätigungscode

高洛峰
高洛峰Original
2017-01-13 14:23:311649Durchsuche

1. Erstens der Ereigniscode in Page_Load der ASPX-Datei des Hintergrundbestätigungscodes:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Drawing; 
namespace 学生在线考试系统 
{ 
public partial class AjaxAutoCode : System.Web.UI.Page 
{ 
//验证数字 
public string authcode = string.Empty; 
protected void Page_Load(object sender, EventArgs e) 
{ 
#region 第一种产生验证码的方法 
Random random = new Random(); 
authcode = random.Next(1111, 9999).ToString(); 
//构造图片 
Bitmap image = new Bitmap(authcode.Length * 12, 25); 
//创建画布 
Graphics g = Graphics.FromImage(image); 
try 
{ 
g.Clear(Color.White); 
for (int i = 0; i < 25; i++) 
{ 
int x1 = random.Next(image.Width); 
int x2 = random.Next(image.Width); 
int y1 = random.Next(image.Height); 
int y2 = random.Next(image.Height); 
//链接两点的线条 
g.DrawLine(new Pen(Color.Silver), x1, y1, x2, y2); 
} 
Font font = new Font("Arial", 12, FontStyle.Bold | FontStyle.Italic); 
System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush( 
new Rectangle(0, 0, image.Width, image.Height), Color.Blue, Color.DarkBlue, 1.2f, true); 
g.DrawString(authcode, font, brush, 2, 2); 
//画图片的前景噪点 
for (int i = 0; i < 100; i++) 
{ 
int x = random.Next(image.Width); 
int y = random.Next(image.Height); 
image.SetPixel(x, y, Color.FromArgb(random.Next())); 
} 
g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1); 
System.IO.MemoryStream ms = new System.IO.MemoryStream(); 
image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif); 
ms.WriteTo(this.Response.OutputStream); 
ms.Close(); 
this.Response.ContentType = "image/gif"; 
} 
finally 
{ 
image.Dispose(); 
g.Dispose(); 
} 
#endregion 
} 
} 
}

2. Zweitens definieren Sie eine JS-Funktion auf der Seite, die den Bestätigungscode anzeigt

function fGetCode() 
{ 
document.getElementById("getcode").src="Default2.aspx?"+Math.random(); 
}

3. Bearbeiten Sie dann den ASPX-Code der Startseite. Im Folgenden finden Sie den Codeausschnitt der Startseite.

<label>验证码</label> 
<asp:TextBox ID="txt_checkCode" runat="server" Width="178px"></asp:TextBox> 
<img src="Default2.aspx" alt="看不清楚?" id="getcode"/> <a href="javascript:fGetCode()">更换验证码</a>

Weitere Artikel zur asp.net-Ajax-Implementierung des No-Refresh-Verifizierungscodes Bitte achten Sie auf die chinesische PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn