Register Startpspriptの後退は繰り返し解決方法を提示します.
4814 ワード
私はバックグランドでRegister Startup Scriptを呼び出してスクリプトを登録して、ユーザーに他のページにジャンプするかどうかをヒントを与えましたが、問題が来ました.別のページにジャンプしたら、ユーザーが後退したら、元のページからスクリプト情報が提示されます.
その後自分で考えましたが、一つの変数で判断すればいいと思いました.Cookiesで実現することにしました.手順は以下の通りです.
1.Cookiesで読み込むjavascriptの設定方法
長い時間をかけて整理しました.転載する子供靴は私のリンクを残してください.
その後自分で考えましたが、一つの変数で判断すればいいと思いました.Cookiesで実現することにしました.手順は以下の通りです.
1.Cookiesで読み込むjavascriptの設定方法
function getcookie(objname) {
// cookie
var arrstr = document.cookie.split("; ");
for (var i = 0; i < arrstr.length; i++) {
var temp = arrstr[i].split("=");
if (temp[0] == objname) return unescape(temp[1]);
}
}
2.Cookiesを1に設定し、1であれば確認ボックスをポップアップすると判断する.if (list.Count() > 0)
{
Response.Cookies["state"].Value = "1";
ScriptManager.RegisterStartupScript(this, this.GetType(), "confirm", "if(getcookie('state')=='1'){if(confirm(' , ?'))"
+ this.ClientScript.GetPostBackEventReference(this, "yes_" + list[0].KID)
+ "; else " + this.ClientScript.GetPostBackEventReference(this, "no_" + purchaseid) + ";};", true);
}
3.コールバックの場合、Cookiesを2に設定します.このようにボックスにヒントを与えて1ではないと判断したら、これ以上ヒントを与えません.public void RaisePostBackEvent(string eventArgument)
{
Response.Cookies["state"].Value = "2";
if (eventArgument.Contains("yes"))
{
int id = Convert.ToInt32(eventArgument.Split('_')[1]);
Response.Redirect("PurchaseStockInfo_Edit.aspx?type=look&id=" + id);
}
}
ページ更新の判断については、私のブログにはもう一つの文章があります.必要なものは見に行ってもいいです.二つの文章を合わせて、よく使うページの更新、繰り返しの提示などの問題を解決します.長い時間をかけて整理しました.転載する子供靴は私のリンクを残してください.