0

私は js の初心者で、angular JS と JQuery を使用してフォームを作成しました。コードは次のとおりです。

<form id="frm1" onsubmit="return null()">
  <table>
    <tr>
      <td>First Name:</td>
      <td><input type="text" ng-model="fname" name="fname" required></td>
    </tr>
    <tr>
      <td>Last Name:</td>
      <td><input type="text" ng-model="Lname" required></td>
    </tr>
    <tr>
      <td>Email ID:</td>
      <td><input type="email" ng-model="mailid" required></td>
    </tr>
    <tr>
      <td>Password:</td>
      <td><input type="password" ng-model="pass" required></td><br/>
    </tr>
    <tr>
      <td>Confirm Password:</td>
      <td><input type="password" ng-model="Cpass" required></td>
    </tr>
    <tr>
      <td>Confirm Password:</td>
      <td><input type="password" ng-model="Cpass" required></td>
    </tr>
    <tr>
      <td>Address:</td>
      <td><textarea ng-model="address" required></textarea></td>
    </tr>
    <tr>
      <td><input type="button" value="reset" onclick="formReset()"></td>
      <td><input type="button" value="submit"></td>
      <td><input type="button" value="Close" onclick="formClose()"></td>
    </tr>
  </table>
</form>

上記のフォームのスクリプトは次のとおりです。

<script type="text/javascript">
  $(document).ready(function(){
    $('a.button-submit').click(function() {
      $("#magic").show();
    });
  });  

  function formReset()
  {
    document.getElementById("frm1").reset();
  }

  function formClose()
  {
    $("#magic").hide();
  }

  function null()
  {
    var x=document.forms["frm1"]["fname"].value;
    if (x==null || x=="") 
    {
      alert("First name must be filled out");
      return false;
    }
  }
</script>

[リセット] と [閉じる] ボタンは問題なく機能しますが、問題は [送信] ボタンの検証が正しく機能していないことです。現在、私は fname フィールドを検証しようとしていますが、うまくいきません。この正確な理由はわかりません。誰でもこの問題を乗り越えるために私を助けてください。

4

2 に答える 2

1

コードの問題のリスト。

  1. javascript キーワードを使用して変数または関数に名前を付けないでください。この場合null
  2. onsubmitイベントを機能させるには、ボタンsubmitのタイプをsubmitnotにする必要がありbuttonます。
  3. すでにrequiredフィールドにfnameフィールドがあり、まだ検証しようとしています。
于 2013-10-12T06:22:02.037 に答える