日期:2014-05-19  浏览次数:20677 次

Servlet问下你们这个问题,分不多哈,请教下
<img id="img1" src="Checkcode"/>
<a href="javascript:;" onclick="document.getElementById('img1').src='Checkcode?'+Math.random();">换一张</a>


//Checkcode是一个servlet 的url
web.xml
servlet-name>chechcodeservlet<
servlet-class>XX.yyy<
servlet-url>/Checkcode<
XX.yyy这个类,是一个随机关生验证码的类,返回的是一个验证码图形
img 通过src="Checkcode"中的Chechcode去Servlet 中找到些类产生一个图形显示
问题:

src='Checkcode?'+Math.random();中为什么'Checkcode?'+Math.random()可以重置src="Checkcode"的src
比如src=Checkcode?1 那么img中的src='Checkcode?1'
它会通过'Checkcode?1'去servlet中找匹配啊,按理说,找不到啊,怎么回事呢?
这是我的理解……


------解决方案--------------------
?号后面的都是参数,每次点击换图片链接时都会传不同的参数过去,如果每次请求都是Checkcode那么都是同样的请求,不会重新生成。因为请求后面跟了参数,所以每次请求都不一样
------解决方案--------------------
?后面的都是参数,?前面的请求地址,比如请求Checkcode?id='+Math.random(),,那么Checkcode是Servlet,在Servlet中可以通过request.getParamter("id")获取到这么Math.random()的值。