1

c# .net の使用

こんにちは、アンロード イベントで postBack を実行しようとしています。Google Chrome では、現在のスクリプトは正常に動作します。

window.onbeforeunload = function () {
            __doPostBack('<%= pararThread.ClientID.Replace("_", "$") %>');
        }

for internet explorer and other, I had to use Jquery
        $(window).unload(function () {
            __doPostBack('<%= pararThread.ClientID.Replace("_", "$") %>');
        });

これまでのところ、とても良いですが、Firefox でのみ、ページはポストバックを行っていますが、別のページには移動しなくなりました。たとえば、リンクをクリックすると、unLoad イベントが発生し、ポストバックが行われます。 、しかし、ページは更新され、リンクには到達しません

Ps: サーバー上で実行されているスレッドを停止する必要があるため、この postBack を実行しています。

4

1 に答える 1

0

</body>次のコード スニペットを .master ページまたはその他の適切なページのタグの直前に追加するだけです。

<script language="javascript" type="text/javascript">
<!--
function __doPostBack(eventTarget, eventArgument) {
var theform;
if (window.navigator.appName.toLowerCase().indexOf("microsoft") > -1) {
theform = document.aspnetForm;
}
else {
theform = document.forms["aspnetForm"];
}
theform.__EVENTTARGET.value = eventTarget.split("$").join(":");
theform.__EVENTARGUMENT.value = eventArgument;
theform.submit();
}
// -->
</script>

「aspnetForm」を独自のものに置き換えます。

于 2012-11-08T22:07:22.680 に答える