0

HTMLコードがあります:

<form action="?" id="form1" method="POST" onsubmit="return g.submitForm();">
    <input type="text" name="posX" id="formPosX" />
    <input type="text" name="posY" id="formPosY" />
    <input type="submit" value="Send" />
</form>

および JS コード:

var g = {
    submitForm: function () {
        var form = document.forms.form1;
        if ( form.posX.value > 100 )
        {
            form.posX.value = 100;
        }
        return false;
    }
}

このフォームは常に値を更新した後に送信されます。私の目標は、間違った値を更新し、フォームの送信を停止することです (AJAX 経由で行いたいと思います)。IF ステートメントを削除すると、コードは正常に動作しますが、いくつかの値を更新する必要があります (更新している場合はエラーも表示します)。

あなたが私の非常に下手な英語を理解してくれることを願っています:)

4

2 に答える 2

0

フォーム入力の値は整数であると想定していますが、実際には文字列データ型として扱われます。比較を適用する前に、値を数値に変換してみてください。

    if ( parseInt(form.posX.value) > 100 )
    {
        form.posX.value = "100";
    }

以下を参照して、コードを調整しました(Jqueryライブラリを含める必要があります):

JS フィドル http://jsfiddle.net/boggey79/kN49d/

于 2013-05-05T13:22:32.100 に答える