2014-10-07 13:23:44 4027次浏览 2条回答 1 悬赏 40 金钱

首先我在controller中这么写:

public function actions() {
		return array(
			'captcha' => array(
				'class' => 'CCaptchaAction',
				'width' => 75,
				'height' => 30,
				//重定义验证码生成规则
				'fixedVerifyCode' => substr(md5(mt_rand(1,10000)),0,5)
			)
		);
	}

然后再view中这么写:

<?php $this->widget('CCaptcha', array(
							'clickableImage' => true,
							'showRefreshButton' => false,
							'imageOptions' => array(
								'alt' => '点击更换图片',
								'style' => 'cursor:pointer', 
								'title' => '点击更换图片'
							)
					)); ?>

最终的效果是,在页面上能够出现验证码图片,但是没有出现那个“点击更换图片”的文字,同时点击验证码图片也不能够刷新验证码,请问这个该怎么弄?

我上网搜了答案,都说这样子可以,但是我的就是不行,请大家帮帮忙,O(∩_∩)O谢谢

  • 回答于 2014-10-08 10:56 举报

    加上:
    buttonLabel'=>'点击更换图片'.
    showRefreshButton 为真,点击验证码图片才能刷新.

  • 回答于 2017-11-06 19:52 举报

    我遇到一个类似的问题,能够显示验证码,但是点击无法刷新。之前有文章说要修改源码,实际我发现并不需要。出现不能刷新的问题有可能是出现了JS错误。
    QQ截图20171106195015.png

    出现这个问题的原因,是我自行引入了jquery.js插件。这个应该是框架自行会引入的。

    QQ截图20171106195128.png
    隐藏自己引入的jquery.js。点击图片刷新的功能就一切正常了。

您需要登录后才可以回答。登录 | 立即注册
koma
见习主管

koma

注册时间:2014-01-16
最后登录:2014-10-20
在线时长:18小时41分
  • 粉丝3
  • 金钱195
  • 威望0
  • 积分375

热门问题