Ⅰ 高手幫看下這個js,向手機發送驗證碼,60秒倒計時,如何在這60秒內刷新頁面這60秒還有效,60秒後才可重發
js頁面一刷新就什麼都沒 除非你寫cookie 刷新的完成後再讀取cookie
Ⅱ 用Jquery設置點擊圖片刷新驗證碼,但是只能點擊一次,第二次就會失效,感覺是獲取按鈕對象的問題
$("#change").click(function () {
let date= new Date().getTime();
$("#checkCode").setAttribute("src", /day15/checkCodeServlet?"+date);
});
這樣?
Ⅲ 寫了個JS腳本來刷新驗證碼 可是總是刷不出來 求高手
<img src='for2.php?'>
js 更換img的src時 在for2.php後面加 隨機字元。如 "for2.php?"+mathi.random();
Ⅳ jsp頁面該如何刷新驗證碼
(1)jsp代碼:
<img id = "img_authcode" src="${ctx}/account/authcode" /><a href="javascript:;" onclick="javascript:document.getElementById('img_authcode').setAttribute('src', '${ctx}/account/authcode?' + Math.random())">換一換</a>
(2)java代碼(該代碼為我自己框架代碼,跟servlet寫法不一樣的我都給你注釋了):
public View authcode() throws IOException {
HttpServletResponse response = PuffContext.getResponse();//獲取response
response.setContentType("image/jpeg");
response.setHeader("Pragma", "No-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0);
String authCode = AuthCodeUtil.getRandom(4); //獲取驗證碼,代碼在下面(3)
System.out.println("生成隨機碼:" + authCode);
PuffContext.getSession().setAttribute("session_authcode", authCode);//把該驗證碼存儲在session
ServletOutputStream output = response.getOutputStream();
AuthCodeUtil.draw(output, authCode);
output.flush();
output.close();
return ViewFactory.nullView();//返回null
}
(3)///////////////////////////下面為生成驗證碼類////////////////////////////////////
public class AuthCodeUtil {
private final static Random random = new Random();
// 隨機字體樣式
private final static int[] fontStyle = { Font.HANGING_BASELINE, Font.ITALIC, Font.LAYOUT_LEFT_TO_RIGHT, Font.LAYOUT_NO_LIMIT_CONTEXT,
Font.LAYOUT_NO_START_CONTEXT, Font.LAYOUT_RIGHT_TO_LEFT };
/**
* 畫隨機碼圖
*
* @param out
* @param width
* @param height
* @throws IOException
*/
public static void draw(OutputStream out, String value) throws IOException {
int width = 80, height = 30;
BufferedImage bi = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics2D g = (Graphics2D) bi.getGraphics();
g.setColor(Color.WHITE);
g.fillRect(0, 0, width, height);
g.drawRect(1, 1, width - 2, height - 2);
for (int i = 0; i < 10; i++) {
g.setColor(randColor(150, 250));
g.drawOval(random.nextInt(110), random.nextInt(24), 5 + random.nextInt(10), 5 + random.nextInt(10));
}
int n = (int) (Math.random() * 6);
Font mFont = new Font("Arial", fontStyle[n], 23);
g.setFont(mFont);
g.setColor(randColor(10, 240));
g.drawString(value, 10, 21);// 隨機數,水平距離,垂直距離
ImageIO.write(bi, "png", out);
}
private static Color randColor(int fc, int bc) {// 給定范圍獲得隨機顏色
if (fc > 255)
fc = 255;
if (bc > 255)
bc = 255;
int r = fc + random.nextInt(bc - fc);
int g = fc + random.nextInt(bc - fc);
int b = fc + random.nextInt(bc - fc);
return new Color(r, g, b);
}
public static void main(String[] args) throws IOException {
FileOutputStream out = new FileOutputStream("d:\\aa.png");
draw(out, getRandom(4));
}
public static String getRandom(int size) {// 隨機字元串
char[] c = { '1', '3', '5', '6', '7', '8', '9' };
StringBuffer sb = new StringBuffer();
for (int i = 0; i < size; i++)
sb.append(c[Math.abs(random.nextInt()) % c.length]);
return sb.toString();
}
}
Ⅳ JS刷新驗證碼的問題
沒有設置事件怎麼刷新呢?? 你如果想當點擊的時候刷新要加click事件.這里是獲取來的元素也就是imgCode.onclick = function () {
這裡面寫你的代碼
}
Ⅵ JavaScript 刷新驗證碼失敗
估計是有JS的代碼錯誤導致部分JS功能無法正常使用了,建議你在瀏覽器訪問時按F12出來控制台查看下是否有錯誤的JS提示。
目測出問題的地方有兩處:
1、onload="btn.disable=false;"
2、document.getElementById("btn").isDisable=true;
把這兩個代碼刪掉試試。