0

Javascript 関数を呼び出している単純な html ページがあります。

何らかの理由で JS 関数が呼び出されていません

<html>
    <body>
        function validateForm()
        {
            alter("Validate form")
            var x=document.forms["myForm"]["fname"].value;
            if (x==null || x=="")
            {
                alert("First name must be filled out");
            }
        <form name="myForm" onsubmit="validateForm()">
            First name: <input type="text" name="fname">
            <input type="submit" value="Submit">
        </form>

    </body>

最終的なjs関数..

<html>
    <head>
        <script type="text/javascript">
            function validateForm()
            {
                alter("Validate form")
                var x=document.forms["myForm"]["fname"].value;
                if (x==null || x=="")
                {
                    alert("First name must be filled out");

                }
            }
        </script>
        <body>
            <form name="myForm" onsubmit="validateForm()">
                First name: <input type="text" name="fname">
                <input type="submit" value="Submit">
            </form>

        </body>
4

3 に答える 3

4

scriptJavaScript 関数はタグに入れる必要があります。次のように:

<head>
    <script type="text/javascript">
        function validateForm() {
            alert("Validate form");
            var x = document.forms["myForm"]["fname"].value;
            if (x == null || x == "") {
                alert("First name must be filled out");
                return false;
            }
        }
    </script>
</head>
<body>
    <form name="myForm" onsubmit="return validateForm();">First name:
        <input type="text" name="fname">
        <input type="submit" value="Submit">
    </form>
</body>

編集

ワーキングフィドルリンク

于 2013-02-25T19:12:36.160 に答える
2

JavaScript を script タグでラップする必要があります。また、アラートの最初のスペルが間違っていて}、関数の終了も間違っています。

<script>
function validateForm()
    {
    alert("Validate form")
    var x=document.forms["myForm"]["fname"].value;
    if (x==null || x=="")
      {
      alert("First name must be filled out");

      }
}
</script>
于 2013-02-25T19:14:08.807 に答える
2

関数は<script>タグでラップする必要があり、スクリプトの最後に中かっこがありません。また、「アラート」のスペルが間違っています。

function validateForm()
{
alert("Validate form") // alert spelt wrong
var x=document.forms["myForm"]["fname"].value;
if (x==null || x=="")
  {
  alert("First name must be filled out");

  }
} // newly added brace
于 2013-02-25T19:14:12.120 に答える