0

私は 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 で実行したときに問題がなかったのはなぜですか?

4

1 に答える 1

0

js関数と同じ名前だったのでパスワード確認用の名前(chkpassword)を変更します。

<input id="pass2" onkeyup="chkpassword()" class="signup" type="password" value="" maxlength="20" name="chkpassword" />
<input id="pass2" onkeyup="chkpassword()" class="signup" type="password" value="" maxlength="20" name="chkpasswordx" />

@Sumurai8の功績

于 2013-06-26T12:04:09.383 に答える