0

私は自分のhtmlファイルに次のフォームを書きました。

 <form name = "myForm" method="post" action="" id="comment_form" class="comment_form" onsubmit="return validateForm()"  >{% csrf_token %}
                <div class="row-fluid">
                    <div class="span6">
                        <input type="text" id="email" name="email" placeholder="Email*">
                    </div>
                    <div class="span6">
                        <input type="text" id="name" name="name" placeholder="Name*">
                    </div>
                </div>
                <div class="row-fluid">
                    <div class="span8">
                        <textarea name="message" id="txt_message" placeholder="Message*" cols="30" rows="10"></textarea>
                    </div>
                    <div class="span4">
                        <button class="btn " type="button"><i class="li_paperplane"></i>Send message</button>
                    </div>
                </div>
            </form>

そして、HTMLファイル内にこのjavascript関数を追加しました

<script>function validateForm()
     {
    var x=document.forms["myForm"]["name"].value;
    var y=document.forms["myForm"]["email"].value;
    var a=document.forms["myForm"]["message"].value;
    var atpos=y.indexOf("@");
    var dotpos=y.lastIndexOf(".");
    if (x==null || x=="" ||y==null||y==""||a==""||a==null)
    {
        alert("All fields must be filled out");
        return false;}
    if (atpos<1 || dotpos<atpos+2 || dotpos+2>=y.length)
    {
        alert("Please enter a valid e-mail address");
        return false;
    }

    else{
        alert("Thank you for your response");
        return true;
    }
}</script>

[メッセージを送信] ボタンをクリックしても、JavaScript から応答がありません。コードは正常に見え、同じコードが別の HTML ファイルで動作しています。問題に見えるのは?

4

2 に答える 2

1

「メッセージを送信」ボタンは単なるボタンであり、フォームを送信するわけではありません。<input type="submit">または JavaScript を使用し<button>てフォームを送信できます。

于 2013-06-30T15:24:27.423 に答える