验证图片刷新出现的问题

时间:2022-01-09 20:17:55
onclick="javascript:this.src='../config/code.php?tm='+Math.random()


学习解读:
onclick鼠标点击事件。
面象对象中,this代表当前对象,这里你可以理解this



加什么都一样,加随机码也可以Math.random(),防止缓存。

例如刷新验证码的时候就是document.getElementById("pic").src="validate.aspx?"+Math.random();


GET:当客户端要从服务器中读取文档时,使用GET方法。GET方法要求服务器将URL定位的资源放在响应报文的数据部分,回送给客户端。使用GET方法时,请求参数和对应的值附加在URL后面,利用一个问号(“?”)代表URL的结尾与请求参数的开始,传递参数长度受限制。例如,/index.jsp?id=100&op=bind。
  POST:当客户端给服务器提供信息较多时可以使用POST方法。POST方法将请求参数封装在HTTP请求数据中,以名称/值的形式出现,可以传输大量数据。
this.src=this.src+'?'是将this.src原值后加上?,以便向服务器发送一个新的GET方法,从而获取新的验证码



http://bbs.csdn.net/topics/330241537/

<img src="../admin/yzImg.aspx'"onclick="this.src=this.src+='?'" alt="看不清?点击我刷新图片!" />

+=就是要求每次点击的地址要不同才会刷新,+='?'就是每点一次地址都会多一个问号,所以就实现了!

this.src=this.src+='?'就OK了


图片里的 this.src 失效里了
在IE6里正常,,到了ie7里就失效了...图片不会变动了....

 <img src="../admin/yzImg.aspx" alt="验证码,看不清楚?请点击刷新验证码" border="0" align="absmiddle" style="CURSOR: pointer;"  id="yzimg" onclick="this.src='../admin/yzImg.aspx'" />

请问怎么处理?谢谢!document.getElementById('yzimg').src='../admin/yzImg.aspx'

正解!!bbs.csdn.net/topics/270087944













 1 window.onload=startimg;
 2 function startimg()
 3 {
 4 for(var i=0; i<document.images.length; i++) 
 5 {
 6 if(document.images[i].parentNode.tagName=="A";
 7 {
 8 rollover(document.images[i])
 9 }
10 }
11 
12 }
13 function rollover(img)
14 {
15 img.outimg=new Image()
16 img.outimg.src=img.src;
17 img.onmouseout=function()
18 {
19 this.src=img.outimg.src;
20 }
21 img.overimg=new Image()
22 img.overimg="images/02.gif"
23 img.onmouover=function()
24 {
25 this.src=img.overimg.src;
26 }
27 }
28 这里主要是this.src=this.src=img.outimg.src;和this.src=img.overimg.src;的区别是什么呢? 收起
29 主要就是this.src=img.outimg.src左边的this.src和右边的img.outimg.src什么意思

回答:

面象对象中,this代表当前对象,这里你可以理解this为当鼠标滑入onmouseover和滑出onmouseout时鼠标所指向的当前图片对象,显然你这段代码是想在鼠标滑过时切换不同的图片,右边的img.overimg.src和img.outimg.scr正是你想切换的图片对象。
 
追问
如果我把this替换为img.src这样也是可以的,这又是为什么呢?
 
追答
正好说明img就是this了,只要知道this代表当前对象就好

https://zhidao.baidu.com/question/553886140.html


this.src='code.php?tm='+ Math.random();这里的问号是什么

?传参
是将tm 这个值传到下一页
tm的值就是Math.random(); 随机数

但是为什么传个随机数呢,这个在验证码,图片,地方用,为的是刷新页面。
 
追问
哪来的参数
 
追答
你这是个链接地址,通常由一个页面向你跳转的页面传递参数用问号传参。
这个就是向code.php页面传递tm参数啊。
 
追问
关于这个参数不是很理解,能不能再讲清楚一些,谢谢
 
 
在PHP中,在主页用define定义了一个定义常量,当我点主页链接跳到其他页面时,这个常量还有效吗
 

https://zhidao.baidu.com/question/2055569138371391827.html

onclick="this.src='/other/code.php?'+Math.random();"

这个一看就是点击验证码图片用的,onclick是点击事件,
this.src='/other/code.php?是请求验证码的页面,
+Math.random(); 是js的随机数,加这一句是因为静态页面是有缓存的,如果不加点击动作只能运行一次,下一次是没有功能的,



这应该是用在图片上的,就是img标签的
点击事件,点击后图片的路径src属性就变成"/other/code.php?...(...代表一个随机数字
这应该是一个验证码的生成吧
通过php文件生成图片作为一个图片资源路径被访问
然后后面那个Math.random()是生成一个随机数,目的在于让访问的/other/code.php进行刷新,而不会一直都是同一张图片。

https://zhidao.baidu.com/question/562887470824638044.html