検証のためのフォーム送信を防ぐために ajax を実行しました
ajaxの戻り値を隠し変数に格納して検証を行っています...
私のelseループでfalseを返すため、私のフォームは送信されません
Ajaxが成功した後、jqueryからフォームを送信していますが、取得しています
キャッチされていないタイプ エラー: オブジェクト # のプロパティ 'submit' は関数ではありません 助けてください .....
test.php から取得している隠しフィールドに値 1 を格納しているだけです ....
しかし、コンソールは $("#foo")[0].submit(); でエラーを表示します。
2回目に送信をクリックすると、JavaScriptが非表示の値= 1をチェックし、真のループに入ります...その後、送信を取得します
前もって感謝します
<form id="foo" name="foo" action="pop.php" method="get">
<label for="bar">A bar</label>
<input id="bar" name="bar" type="text" value="" />
<input id="bar1" name="bar1" type="text" value="" />
<input type="hidden" name="statushidden" id="statushidden" value=""/>
<input type="submit" value="submit" id="submit" />
</form>
$(document).ready(function() {
$("#submit").click(function() {
var $form = $(this);
var status = validdata();
if (document.getElementById("statushidden").value=="1")
{
alert("true loop");
return true;
}
else
{
alert("false loop");
return false;
}
});
function validdata()
{
var url = "test.php";
$.ajax({
type: "POST",
beforeSend: function(){},
url: url,
data: $("#foo").serialize(), // serializes the form's elements.
success: function(data)
{
document.getElementById("statushidden").value=data;
console.log($("#foo")[0].submit);
$("#foo")[0].submit(); ///// SHOWING Error on this line///////
}
});
}
});