表单辅助函数与JavaScript问题
<?=form_open('login/check_user');?>
<input name="password" type="password" value="" style="width:130px;" />
<input type="hidden" name="key" value=<?=$key; ?> />
<input type="submit" name="submit" value="登 录" onclick="password.value = hex_hmac_md5(key.value, password.value)"
为什么这段:
不起作用呢?
onclick="password.value = hex_hmac_md5(key.value, password.value)"
_post['password']仍然是明文,没有经过加密~~
还有,就是'login/check_user'使用了CI的验证
[ 本帖最后由 BachelorZDB 于 2008-11-28 17:29 编辑 ] 你的 password.value 中的 password 是谁?DOM 节点最好不要这样取吧? 原帖由 Hex 于 2008-11-29 00:27 发表 http://codeigniter.org.cn/forums/images/common/back.gif
你的 password.value 中的 password 是谁?DOM 节点最好不要这样取吧?
先感谢回复。。。:lol :handshake
1. password.value 中的 password 是<input name="password" type="password" value="" style="width:130px;" />
2. DOM 节点最好不要这样取吧?----------------这个不太明白,还望指教~!
<?=form_open('login/check_user');?>
<input name="password" type="password" value="" style="width:130px;" />
<input type="hidden" name="key" value=<?=$key; ?> />
<input type="submit" name="submit" value="登 录" onclick="password.value = hex_hmac_md5(key.value, password.value)"
$js="javascript:password.value = hex_hmac_md5(key.value, password.value)"
<?=form_open('login/check_user',js,hidden); ?>
应该放在这里?我试过放在<form>里,仍然是不行的
我在一个纯PHP环境中是这样的:<form onsubmit="javascript:password.value = hex_hmac_md5(key.value, password.value)"
在HTML环境中测试过那个JavaScript是可以的,在PHP环境中,没有使用CI时按照纯PHP环境中的格式也是可以的啊:Q
[ 本帖最后由 BachelorZDB 于 2008-11-29 14:06 编辑 ] CI 和是不是纯 PHP 和纯 HTML 无关,CI 只是一个框架,他也是 PHP 程序。
你这个问题和 CI 无关!!
CI 最后生成的 HTML 才是浏览器执行的东西,才会有 JS 问题,你应该检查一下 JS 脚本。
你的 password 在标准中不代表你的 <input name="password" 你应该 document.getElementById('password') 这样来取,并且 <input id="password" name="password" ...>
总之一句话,js 的任何错误和 CI 是无关的,CI 控制不了你的浏览器的行为。
回复 4楼 的帖子
谢谢~~我再看看,不过我通过查看PHP生成的HTML页面似乎没什么问题 上面这个问题是<?=base_url();?> 的问题,
JavaScript的引用路径没有配置好~
我已经解决了~
谢谢Hex~~
:handshake :)
页:
[1]