日期:2014-05-18  浏览次数:20459 次

求大手怎么在文本框获得验证码中的值,就是自动填入文本框
首先验证码肯定有个Session["code"]保存验证码随机生成的字符串。

当我在后台给textbox1.text=Session["code"]时,页面首次加载文本框没有值,刷新后文本框有值,但是是第一次的。第三次时,文本框是第二次验证码的值......

用js里window.onload还是只能获取上一次的值。

也就是说当页面首次请求加载执行上面代码时Session["code"]还没有值。

也就是可能执行代码时验证码这个图片还没有请求服务器。因为我在HttpModule里用AcquireRequestState这个事件来获得Session["code"],但是为空。

具体该怎么弄呢。分不多哎。求解啊啊啊啊

------解决方案--------------------
可以将生成验证码的代码放到一个类里面,然后在每次页面OnInit的时候去调用下这个类,别忘了引入sessionState这东西
------解决方案--------------------
+1
探讨

可以将生成验证码的代码放到一个类里面,然后在每次页面OnInit的时候去调用下这个类,别忘了引入sessionState这东西

------解决方案--------------------
探讨
首先验证码肯定有个Session["code"]保存验证码随机生成的字符串。

当我在后台给textbox1.text=Session["code"]时,页面首次加载文本框没有值,刷新后文本框有值,但是是第一次的。第三次时,文本框是第二次验证码的值......

用js里window.onload还是只能获取上一次的值。

也就是说当页面首次请求加载执行上面代码时Session["co……

------解决方案--------------------
楼主这个绕得有点晕。。。。。。。。
------解决方案--------------------
这种关键是顺序的问题
------解决方案--------------------
如果用JS的window.onload,那可以动态设置验证码图片地址,然后再去获取Session["Code"]的值,这样也可以
------解决方案--------------------
我觉得没有这个必要啊,验证码的存在,就是为了安全,也就是说验证码是必要让用户自己输入的,你现在确自动的填充文本框,那还要这个验证码干什么呢?
------解决方案--------------------
首先要弄清页面执行的先后顺序就明白为什是这样的情况了。因为session始终是在页面之后写入的,如果要自动填写验证码,那你还弄验证码做什么,直接去掉不更好?

如果非要自动填写,那就得用ajax异步获取session,其他没什么好办法。
------解决方案--------------------
验证码文本框最好使用 HTML纯标签