0

私はこのフォームを持っています:

<form id="frm_register" action="register.php" method="post" onsubmit ="return register_user()">
    <label for="txtuname" style="display: block; width: 80px; float: left;">Username: </label>
    <input id="txtuname" name="ntxtuname" type="text" style="" /><br /><br /> 
    <label for="txtupwd" style="display: block; width: 80px; float: left;">Password: </label>
    <input id="txtupwd" name="ntxtupwd" type="password" style="" /><br /><br />
    <label for="txtuemail" style="display: block; width: 80px; float: left;">Email: </label>
    <input id="txtuemail" name="ntxtuemail" type="text" style="width:200px;" /><br /><br />
    <label for="txtpayza" style="display: block; width: 80px; float: left;">Payza: </label>                                
    <input id="txtpayza" name="ntxtpayza" type="text" style="width:200px;" /><br /> <br />
    <input type="submit" value="Register" style="margin-left: 250px;"/>
</form>

また、送信前にフォームを確認するJavaScript関数:

<script type="javascript/text">          
    function register_user() {
        if(document.frm_register.ntxtuname.value=='') {
            alert('wrong');
            return false;
        }
        return true;
    }
</script>

ただし、フォームは送信され、検証は行われません。この写真の連中の何が問題になっていますか?

4

3 に答える 3

1

jsFiddleで検証済みの 2 つのエラーを修正すると、コードは機能します。

最初

<script type="javascript/text">        

次のようにする必要があります。

<script type="text/javascript">

そうしないと、Javascript コードが認識されません。

2番目:

document.frm_register

次のようにする必要があります。

document.getElementById("frm_register")

また:

document.forms.frm_register

それ以外の場合は未定義になります。

于 2013-02-24T05:41:53.187 に答える
0

フォームを介してテキストボックスの値を検索するのはなぜですか?

これの代わりに

if(document.frm_register.ntxtuname.value=='')

あなたはこれを行うことができます

if(document.getElementById("ntxtuname").value==="")
于 2013-02-24T05:39:11.260 に答える
0

送信ボタンのクリックで検証が呼び出されるように設定してみてください

<input type="submit" value="Register" 
         style="margin-left: 250px;" onclick="return register_user()"/>

これはそれを処理する必要があります。

于 2013-02-24T05:46:06.340 に答える