2

少し奇妙な状況があります。送信ボタンまたは form1.submit(); をクリックして Java スクリプトを使用してフォームを送信したい。同じです。

 <form id="form1" name="form1" runat="server" class="form-horizontal" action="frmSomeOtherPage.aspx" method="post">
 <input id="btnSubmit" name="btnSubmit" type="submit" value="submit" />

次のコードを正常に動作させるには:

form1.btnSubmit.click();

ページの次の行にある必要があります: (?!??!)

<asp:LinkButton ID='btnSubmitForm' runat='server' CssClass='btn-link' PostBackUrl='~/frmSomeOtherPage.aspx'></asp:LinkButton>

興味深いのは、どこでも btnSubmitForm を使用していないことです! LinkBut​​ton のある行がそこにない場合、フォーム frmSomeOtherPage はエラーを返します: ポストバックまたはコールバック引数が無効です。イベントの検証は、設定で使用するか、ページで <%@ Page EnableEventValidation="true" %> を使用して有効にします........

LinkBut​​ton があれば、どこにも使用されていませんが、すべて問題ありません。<%@ Page EnableEventValidation="false" %> を frmSomeOtherPage に配置すると、すべてが機能することはわかっています....しかし、それは解決策ではありません...未使用の LinkBut​​ton に存在するだけで問題は解決しますが、少し奇妙です。 .. PostBackUrl='~/frmNonExistingPage.aspx' を LinkBut​​ton に配置しても、正しく機能します。また、LinkBut​​ton を非表示にすることもできますが、それでもうまく機能します。

何か案が?

4

0 に答える 0