0

ユーザーがフォームでデータを送信できないようにしたいのですが、JavaScriptでテストするとtrueが返されません。

type="button"送信ボタンのタイプを次の代わりに設定する方法を使用していますtype="submit"<input type="button" name="envoyer" onclick="valider(this.form)">

次に、このJavaScriptスクリプトを使用します。

function valider(formulaire)
        {
            if(//my test)
            {
                formulaire.envoyer.type = "submit";
                formulaire.envoyer.submit();
                return true;
            }

            return false;
        }

タイプをボタンに変更せずに送信ボタンを残す他の方法はありますか?

4

3 に答える 3

1

通常のJavascriptでは

関数の戻り値を使用して、フォームの送信を防ぐことができます

<form name="myForm" onsubmit="return validateMyForm();"> 

のように機能します

<script type="text/javascript">
function validateMyForm()
{
  if(check if your conditions are not satisfying)
  { 
    alert("validation failed false");
    returnToPreviousPage();
    return false;
  }

  alert("validations passed");
  return true;
}
</script>

jQueryで

$('#form').submit(function (evt) {
    evt.preventDefault();
    window.history.back();
});

道場で

dojo.connect(form, "onsubmit", function(evt) {
    evt.preventDefault();
    window.history.back();
});
于 2013-03-15T18:28:06.480 に答える
0

関数をフォームの送信イベントにバインドするだけです。入力タイプを変更する必要はありません。

myForm.submit = function valider(formulaire)
        {
            if(//my test)
            {
                formulaire.envoyer.type = "submit";
                formulaire.envoyer.submit();
                return true;
            }

            return false;
        }
于 2013-03-15T18:26:58.907 に答える
0

ボタンの種類を変更するのはなぜですか?

ただやってくださいonclick="return valider(this.form)"。falseを返すと、送信できなくなります。

于 2013-03-15T18:28:25.643 に答える