私はasp.net Webフォームで.net framework 4.0を使用しています。その間に、jqueryフォームの検証を実装しました。フォームの検証にはうまくいきますが、更新パネルで問題が発生したため部分的なポストバックはできませんが完全にポストバックはできません。すべての返信を感謝します。jQueryフォームの検証と更新パネル
私はこのようなことをしており、フォームの検証を行い、更新パネルがリクエストを初期化するときにイメージを表示します。
<script type="text/javascript">
$(document).ready(function() {
$(".logForm").validate();
$('#main_UpdatePanelAccount').initializeRequest(function (options) {
$("#flashAcc").show();
$("#flashAcc").fadeIn(400).html('<img src="/image/load.gif" align="absmiddle">');
});
});
</script>
この後、ポストバックかどうかを判断するために、この2ブロックのコード(コメント付きとコメント付き)を用意しています。ただし、この2ブロックのコードは、完全にポストバックされた更新パネルでも終了します。
<script type="text/javascript">
Sys.WebForms.PageRequestManager.getInstance().add_initializeRequest(instance_initializeRequest);
function instance_initializeRequest(sender, args) {
if (!Validator()) {
args.set_cancel(true);
}
}
// $(function() {
// Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
// //Re-initialize jquery after an auto post back.
// function EndRequestHandler(sender, args) {
// //Do work after update panel fires.
// var prm = Sys.WebForms.PageRequestManager.getInstance();
// if (!Validate()) {
// prm.abortPostBack();
// args.set_cancel(true);
// }
// else {
// prm.add_beginRequest();
// args.set_cancel(false);
// }
// }
// });
</script>
現在、適切なモードのコードブロックがアップデートパネルの外にあります:) –