1

公正な警告:私はこれについて私が知っていることの半分を理解しておらず、それほど多くも知らないので、学習中に誤用された用語や不明確な説明を許してください.

私はeコマースストアアプリケーションに取り組んでいます。私のテーマを含む App_Themes があり、その下にはスクリプトレット (ヘッダー、フッター、コンテンツ、サイドバーなど) があります。

一つはお店のロゴなどを入れたヘッダー、もう一つはコンテンツ(この場合はレシートページ)です。

領収書ページでボタンをクリックすると、ヘッダー スクリプトレットが消えるように設定したいと考えています。CSS display:none を考えていましたが、別のスクリプトレットでその部分に対処する方法がわかりません。私もその考えに結婚していません。

どうやら、別のスクリプトレットでコントロールに直接対処することはできません。

いくつかのコードっぽい例。

ヘッダ:

!-- Store Banner-->
<div id="PageBanner">
    <div id="PageBannerLogo">
        [[ConLib:Custom/StoreLogo]]
    </div>
</div>

[[ConLib:Custom/SwitchMobile]]

コンテンツ:

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="ReceiptPageInvoice.ascx.cs" Inherits="ConLib_Custom_ReceiptPage" %>
<%--
<conlib>
<summary>Display page to show details of an order like order items, shipping address, billing address etc.</summary>
<param name="AllowAddNote" default="true">If true, the customer can add notes to the order.  If false, the customer can only see notes added by the merchant.</param>
<param name="HandleFailedPayments" default="false">If true, the customer is redirected to an order payment page if the payment fails at checkout.</param>
</conlib>
--%>

<script src="js/showHide.js"></script>
<%--Scrolls address bar out of the way on iphones.
<script type="application/x-javascript">
addEventListener("load", function() { setTimeout(hideURLbar, 0); }, false);

function hideURLbar(){
window.scrollTo(0,1);
}
</script>--%>


<%@ Register Src="~/ConLib/OrderTotalSummary.ascx" TagName="OrderTotalSummary" TagPrefix="uc" %>
<%@ Register Src="~/ConLib/BreadCrumbs.ascx" TagName="BreadCrumbs" TagPrefix="uc" %>
<%@ Register Src="~/ConLib/Custom/OrderItemDetail.ascx" TagName="OrderItemDetail"
    TagPrefix="uc" %>
<%@ Register Src="~/ConLib/Utility/PayPalPayNowButton.ascx" TagName="PayPalPayNowButton"
    TagPrefix="uc" %>
<%-- this file is identical to ~/ConLib/MyOrderPage.ascx, with the addition of the affiliate tracker tag --%>
<%@ Register Src="~/Checkout/AffiliateTracker.ascx" TagName="AffiliateTracker" TagPrefix="uc" %>
<asp:PlaceHolder runat="server" ID="ReceiptPagePh" Visible="True">
    <asp:Panel runat="server" ID="InvoicePageTopPnl">
    <asp:PlaceHolder ID="BalanceDuePanel" runat="server" Visible="false" EnableViewState="false">
        <br/>
        <asp:Label ID="BalanceDueMessage" runat="server" Text="** Your order has a balance of {0:lc} due.&nbsp&nbsp;<a href='{1}'><u>Pay Now</u></a>"
                   SkinID="ErrorCondition"></asp:Label>
        <br/>
        <br/>
    </asp:PlaceHolder>  

プログラムの詳細....

ヘッダーを非表示にするボタン:

<asp:Button runat="server" ID="ShowTicketButton" OnClick="ShowTicketButton_Click" Text="Show Ticket" />

あるスクリプトレットから別のスクリプトレットにスキップするのは初めてです。単一の conlib 内では問題ありませんが、あるボタンの外観を別の外観に変更することは異なります。これは私が到達していないレベルです。

どんな助けでも大歓迎です。ジム

4

1 に答える 1

0

うわー、SOに刺されたことは一度もありません。おそらく、私はそれについて非効率的に考えていたからです。私の解決策は、ヘッダー/フッターのない新しいレイアウト スクリプトレットを単純に作成し、コンテンツ スクリプトレットからパンくずリストの conlib を削除することでした。ヘッダーが必要な場合は、ヘッダーをページにロードして、自由に表示および非表示にできます。これを見てくれたすべての人に感謝します...私はそれが奇妙なものであることを知っています.

于 2015-07-21T13:21:26.523 に答える