私は js にはほとんど慣れていませんが、php-html Web プログラミングには慣れていませんが、js の使用法に混乱しています。
私はこのjs関数を使用して2つの入力を比較していました(パスワードチェック)、
ここにフィドルがあります
http://jsfiddle.net/EHUWC/1/
何も問題ありませんよね?
しかし、それは自分のWebページでは機能しません。これが
私のコードです(codeigniterを使用しています):
<div class="centerTitle">Sign Up Form</div>
<script>
function chkpassword() {
var p1 = document.getElementById("pass1").value;
var p2 = document.getElementById("pass2").value;
if (p1.length > 5) {
document.getElementById("passwordAlert").style.display = 'none';
if (p1 === p2) {
document.getElementById("passwordAlert").style.display = 'none';
validpass = "yes";
} else {
validpass = "no";
document.getElementById("passwordAlert").style.display = 'block';
document.getElementById("passwordAlert").innerHTML = ":( Both passwords must match.";
}
} else {
document.getElementById("passwordAlert").style.display = 'block';
document.getElementById("passwordAlert").innerHTML = ":( The password must be at least 6 characters long.";
}
}
</script>
<?php $attributes = array('name' => 'Form1','onsubmit' => 'return validate()');
echo form_open("visitor/confirm", $attributes);?>
<table>
<tr class='signup'>
<td class='signup1'>Password*</td>
<td class='signup2'>:</td>
<td class='signup3'>
<input id="pass1" onkeyup="chkpassword()" class="signup" type="password" value="" maxlength="20" name="password" />
</td>
</tr>
<tr class='signup'>
<td class='signup1'>Confirm Password*</td>
<td class='signup2'>:</td>
<td class='signup3'>
<input id="pass2" onkeyup="chkpassword()" class="signup" type="password" value="" maxlength="20" name="chkpassword" />
<div id="passwordAlert"></div>
</td>
</tr>
</table>
<input type="submit" value="Daftar">
<?php echo form_close();?>
(私はこのビューに何も渡していません)
パスワードの入力を間違えた場合、divは表示されません。
要素を調べてクロムのコンソールを調べると、
見逃したものをonkeyup
取得するUncaught TypeError: Object is not a function
エラーが表示されました
?
jsfiddle で実行したときに問題がなかったのはなぜですか?