今晚遇到个奇葩问题,后台登陆界面的验证码死活不能刷新,后来经过一番折腾,终于搞定,解决办法参考了2个网址,如下:
http://blog.sina.com.cn/s/blog_7d0c4ede0101glhk.html
原文如下:
后台登陆调用验证码,点击验证码不刷新,没有反应(所有验证码配置,参数都是正确的)。找错的时候发现可以刷新验证码的页面比不可以刷新验证码的页面多了一段js代码,用来处理点击验证码刷新的事件。 为什么会少了一段代码?原来就是因为控制器分别调用了renderPartial和render. 下面就说说它们的区别: 在进行页面输出渲染的时候。 render 输出父模板的内容,将渲染的内容,嵌入父模板。 render 函数内部默认执行processOutput($output)函数, 会将把组件,比如 CTreeView 里面注册到CClientScript 里面的需要的脚本进行渲染输出。 而renderPartial() 默认不自动渲染输出客户端脚本,需要进行参数的指定,才会输出: 就像我们遇到的问题,用renderPartial时,页面没有输出验证码刷新的那段js。所以就没有反应。 |
http://blog.csdn.net/poly_sunny/article/details/19995801
主要是给renderPartial()方法参数修改下即可。
文章的脚注信息由WordPress的wp-posturl插件自动生成