実際に送信される前にjavascript関数を使用してフォームを検証したかったので、イベントリスナーを使用してasp:button(送信)のアクションを防止しました。
formInstance.addEventListener('submit', function (event) {
event.preventDefault();
}, false);
ボタンは次のとおりです。
<asp:Button ID="btnCreateForm" CssClass="submit-form button" runat="server"
Text="Save Form" OnClick="btnCreateForm_Click"
OnClientClick="Sharpforms.checkFormEntry()" />
解雇されたJavaScript:
checkFormEntry: function () {
var formName = document.getElementById("txtFormName");
if (formName.value.trim() == "") {
alert("Please fill in a valid form name!");
return false;
}
else {
//formInstance.submit();
return true;
}
}
どうやら、ページがリロードされているため、javascript submit()はフォームを送信しますが、ASP側のbtnCreateForm_Click関数にはもう入らないことを認識しました。
protected void btnCreateForm_Click(object sender, EventArgs e)
{
System.Diagnostics.Debug.WriteLine("Test if the button has been clicked.");
}
私のフォームイベントリスナーとsubmit()にコメントを付けてネイティブに送信しようとすると、彼は問題なくクリック関数に入ります。しかし、クライアント側でフォームを確認することはできません。私は何が欠けていますか?