jquery初心者です。
次の ASP.net ページがあります。
ユーザー コントロールを含むダイアログ ボックス ユーザー コントロールが隠しフィールドでポストバックを行う
このポストバックでは、ダイアログは自動的に閉じられますが、同じ状態でダイアログを開く必要があります
誰でも私を助けることができますか?
私は ASP の知識はありませんが、この背後にあるロジックを教えてください。
次のようにURLに追加のパラメーターを設定するだけですdomain.com/index.php?dialog=y
ダイアログを開いてこのパラメーターを確認してください。このようなphpでお見せします..
<?php if(isset($_GET['dialog']) && $_GET['dialog'] == 'y') { ?>
// your jquery dialog here to open on page load
<?php } ?>
.NET では、ClientScript.RegisterClientScriptBlock
. ここでそれについて読んでください。
これにより、ページにJavaScriptを出力できるため、ページがポストバックされた後、これを呼び出してJavaScriptを出力し、ダイアログをバックアップできます。
例えば
ClientScript.RegisterClientScriptBlock(this.Page.GetType(), "js", "openDialog();", true);
または、私がしていることは、ページにパブリック文字列変数を作成することです
public string _JS;
次に、.aspx ページで、スクリプト タグ内にこれを含めることができます。
<script>
$(function() { <%=(this._JS)%> });
</script>
この例では jQuery を使用していますが、ページが読み込まれると、その中に入れたものはすべて_JS
実行されます。
_JS = "alert('hello world');";
このコードをそのページの script タグに記述します。
$(document).ready(function() {
//write code to show popup
});
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_endRequest(function() {
//write code to show popup
};
それはあなたを助けるでしょう。