ASP.NET 中用JS如何实现验证码图片?

ASP.NET中用JS如何实现验证码图片?又要怎么调用(让它在特定的位置显示)?... ASP.NET 中用JS如何实现验证码图片?又要怎么调用(让它在特定的位置显示)? 展开
 我来答
灵葬外与他29
2013-04-14 · TA获得超过2183个赞
知道小有建树答主
回答量:1221
采纳率:50%
帮助的人:944万
展开全部
首先图片不是用JS实现的,而是在服务端用C#(VB)来写代码生成的一个图片,然后用AJAX(JS)调用服务器的验证的处理程序。至于在特定的位置显示的话最后用DIV+CSS定位,当然你如果硬是要拿JS定位也是可以的。
匿名用户
2013-04-14
展开全部
一般每个公司里都有自己写的验证码控件,
这里讲一个自己手写验证控件
建一个新imgvil.aspx生成图片.如果要在页面上显示,可在相应的地拖一个图片控件 page_load里可写
imagebutton1.imageurl = "imgvil.aspx";

至于imgvil里 ,可写2个方法
private void validatecode(string vnum)

{

bitmap img=null;
graphics g=null;
memorystream ms=null;
int gheight=vnum.length*12;
img=new bitmap(gheight,25);
g=graphics.fromimage(img);

//背景颜色
g.clear(color.white);

//文字字体
font f=new font("arial black",10);

//文字颜色
solidbrush s=new solidbrush(color.black);
g.drawstring(vnum,f,s,3,3);

ms=new memorystream();

img.save(ms,imageformat.jpeg);

response.clearcontent();

response.contenttype="image/jpeg";

response.binarywrite(ms.toarray());

g.dispose();

img.dispose();

response.end();

}

private string rndnum(int vcodenum)
{

string vchar="0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p"+

",q,r,s,t,u,v,w,x,y,z";

string[] VcArray=Vchar.Split(new Char [] {\',\'});
string vnum="";

int temp=-1;

random rand=new random();

for(int i=1;i<vcodenum+1;i++)

{

if(temp!=-1)

{

rand=new random(i*temp*unchecked((int)datetime.now.ticks));

}

int t=rand.next(35);

if(temp!=-1&&temp==t)

{

return rndnum(vcodenum);

}

temp=t;

vnum+=vcarray[t];

}

return vnum;

}

load里写入调用``
string tmp = rndnum(4);//图片生成4位数字
httpcookie a = new httpcookie("imagev",tmp);
response.cookies.add(a);
this.validatecode(tmp);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-04-14
展开全部
一般的把验证码邪成控件用的,JS能不能写,我就不清楚了,我不过通过JS来画图的话! 我还是头一次听说哦!一般都是用GDI来画的!验证码不是数字,而是随机抽取你定义的范围之内的字符来组成字符串,然后把字符串话到你定义好的画板上面的所以还是老实点用ASP.NET来写哦!不要搞的那么复杂哦!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-04-14
展开全部
Js不可以写验证码 因为一般都是将验证码的答案存到session里 js无权也无法获取session的值
假设能写 也没有人用js写 因为js的代码完全可以被用户看到 如果被恶意软件捕获 验证码就没有意义了 所以必须在服务器端验证
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
江城Spring
2013-04-14 · TA获得超过1202个赞
知道小有建树答主
回答量:763
采纳率:0%
帮助的人:350万
展开全部
网上多的是这样的代码。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式