_dopostbackがボタンマークアップでレンダリングされるのを防ぎます
-
22-09-2019 - |
質問
_dopostback()コールがボタンでレンダリングされるのを防ぐことはできますか?
ポストバックを呼び出す前に、いくつかのカスタムロジックを追加したいと思います。
ボタンにオンクリックイベントを追加しました
例えば
<button id="manualSubmit" runat="server" class="manual-submit" onclick="$('#jeweller-form').hide();" />
ただし、これは_dopostback()の前にインラインになったばかりですが、jqueryhideが行われる前にポストバックが発射されます
自分のJS関数を呼び出してから、手動でポストバックをトリガーしたい
何か案は?
解決
これを試して:
<button runat="server" id="Test" onserverclick="Test_ServerClick">Submit</button>
<script src="jquery-1.3.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
var o = $("#Test"), c = o.attr("onclick");
o
.removeAttr("onclick")
.click(function(e) {
o.fadeOut("slow", function() {
o.fadeIn("slow", function() {
c(e);
});
});
return false;
});
});
</script>
他のヒント
return falseを追加します。クリックイベントのクライアント側のコードの後。 htmlcontrolでは、__dopostbackになったとは思わなかった。 _dopostbackをレンダリングするコントロールであり、それを防ぐための一般的な方法は次のとおりです。
<asp:Button ... OnClientClick="doThis();return false;" />
__dopostbackの前にこれらのJSステートメントをレンダリングします。
Hth。
所属していません StackOverflow