Проблема с получением ModalPopUp для правильного отображения заполненного текстового поля - PullRequest
0 голосов
/ 30 августа 2011

На моем сайте есть описания продуктов, которые мы продаем, и в настоящее время я пытаюсь заставить эти описания всплыть в модальном popupextender.Я могу получить их всплывающее окно с текстовым полем, в котором я включил = "ложь", чтобы его нельзя было редактировать, но он показывает все теги вместе с текстом, таким как <p>, <li> и т. Д.Есть ли другой элемент управления, который я могу использовать внутри моего модального окна, который будет лучше отображать мой текст?

 <!-- Descriptions -->
 <asp:TabPanel ID="tab2"  runat="server" HeaderText="Descriptions">
 <HeaderTemplate>Descriptions</HeaderTemplate>
    <ContentTemplate>
        <ul class="info">
        <asp:ListView ID="lvDescriptions" runat="server" DataSourceID="dsMarketingDescriptions" DataKeyNames="MarketingID">
        <ItemTemplate>
            <li>
                <asp:LinkButton ID="ViewDescriptionButton" runat="server"><%#Eval("MarketingTitle")%></asp:LinkButton>
                <asp:ImageButton ID="DeleteDescriptionButton" runat="server" Style="float:right;" AlternateText="" ImageUrl="../../images/delete.png" CommandName="Delete" OnClientClick="return confirm('Are you sure you want to delete this description?')" />
                <asp:Panel ID="ViewDescriptionPanel" runat="server">
                    <asp:ImageButton ID="CancelDescriptionButton" runat="server" ImageUrl="../../images/exit.png" AlternateText="" Style="float:right;"/>
                    <asp:TextBox ID="Description" runat="server" width="100px" height="100px" Enabled="false" TextMode="MultiLine" Text='<%# Eval("MarketingData") %>'/>
                </asp:Panel> 
                <asp:ModalPopupExtender ID="ViewDescriptionModal" runat="server" BackgroundCssClass="modalBackground" DropShadow="false" DynamicServicePath="" Enabled="true" PopupControlID="ViewDescriptionPanel" TargetControlID="ViewDescriptionButton" CancelControlID="CancelDescriptionButton"></asp:ModalPopupExtender>              
            </li>
        </ItemTemplate>
        </asp:ListView>
        </ul>
    </ContentTemplate>
</asp:TabPanel>

Вот пример <% # Eval ("MarketingData")%>: <p>If you are currently trading options on futures or are interested in exploring them further, check out this newly updated trading guide, featuring 25 commonly used options strategies, including butterflies, straddles, strangles, backspreads and conversions. Each strategy includes an illustration demonstrating the effect of time decay on the total option premium involved in the position.</p><p>Options on futures rank among the most versatile risk management tools, and are offered on most CME Group products. Whether you trade options for purposes of hedging or speculating, you can limit your risk to the amount you paid up-front for the option while maintaining your exposure to beneficial price movements.</p>

Ответы [ 2 ]

2 голосов
/ 30 августа 2011

Если текст нельзя редактировать, почему бы вам не использовать вместо него метку asp:

Включает ли поле MarketingData теги html?Пожалуйста, предоставьте пример значения для MarketingData.

Редактировать: Если вы знаете, какие теги могут присутствовать в вашем тексте, вы можете просто создать свойство в классе, содержащее свойство, называемоеMarketingData, вот так:

public string EditedMarketingData
{
    get {return MarketingData.Replace("<p>","").Replace("</p>","").Replace("<li>","");}
}

А затем измените привязку в текстовом поле следующим образом:

Text='<%# Eval("EditedMarketingData") %>'

Замена выглядит некрасиво, надеюсь, вы сможете заставить ее выглядеть лучше;)

1 голос
/ 30 августа 2011

Я думаю, что Literal будет наиболее подходящим элементом управления для этого типа контента, так как он сохранит HTML в контенте.Возможно, вы также можете использовать метку.

Если вы предпочитаете придерживаться TextBox, я бы попытался установить для свойства ReadOnly значение false (вместо Enabled).Если вы хотите добиться инвалидности.

...