0

3 つの ASPX ページがあります。他の 2 つのページから呼び出される ASPX ページは、ファイルをアップロードできるページです。

JavaScript を使用して、他の 2 つのページから Upload-Page を呼び出します。

 function UploadFax_Click() {
             var grid = ISGetObject("WebGrid1");
             var curSelObj = grid.GetSelectedObject(); // get selected object
             var row = curSelObj.GetRowObject(); // get the WebGridRow object
             if (row.Type == "Record") {
                 var s_id = row.KeyValue
            }
            window.location = '../Admin/UploadFax.aspx?suppid=' + s_id;
         }

次に、アップロード ページで、QueryString を取得します。

 If Not IsPostBack And Len(Request.QueryString("suppid")) > 0 Then
        If Not Request.QueryString("suppid") Is Nothing Then
            Session("suppid") = Request.QueryString("suppid")
        End If
    End If

必要なのは、2 つのページのいずれかから Upload-Page を呼び出す場合、Upload-Page の機能を制限する必要があることです。例: Upload-Page を呼び出した場合、Checkbox.Disabled = true で、他のページからチェックボックスを有効にする必要があります。

私の考えは、そのページから2番目のパラメーターを送信し、Request.QueryStringでパラメーターを取得してから、if/elseを使用してそのチェックボックスを有効または無効にすることでした。

質問は、私が望むことを行う別のより良い可能性はありますか? はいの場合、どうすればそれを行うことができますか?

4

2 に答える 2

1

を使用QueryStringするとセキュリティ違反が発生する場合がありSessionます、パラメータを使用してみませんか、

最初のページから呼び出すときは、

Session("IsCalled")="1"

2ページ目のロードチェック

IF Not Session("IsCalled") Is Nothing AndAlso Session("IsCalled")="1" Then
   CheckBox1.Enabled=False
End If

最初のページのロードでViseVersa。

于 2012-12-14T10:11:23.443 に答える
1

を確認してRequest.UrlReferrer、そこから踊ることができます。

Dim restrictedAccess As Boolean = Not IsNothing(Request.UrlReferrer) AndAlso
        Request.UrlReferrer.AbsolutePath.IndexOf("/Original.aspx", StringComparison.InvariantCultureIgnoreCase) >= 0

Checkbox.Disabled = Not restrictedAccess
于 2012-12-14T10:05:23.533 に答える