2016-08-15 71 views
1

我已经通读了各种主题,发现没有任何帮助我的情况。服务器标签与ASP格式不正确:按钮

根据我的销售变量是1还是0,我希望能够相应地显示或隐藏按钮。

我做了以下,但我得到一个服务器标签不规范的错误,尽管改变了引号'和“(我知道不会帮助),但它仍然没有解决的错误。

<asp:Button ID="btnMarkAsSold" OnClick="btnWantSell" runat="server" Text="Mark as sold" class="btn btn-warning btn-block higher bold" <%#(Eval("Sold").ToString() == "1" ? "style='display:none'" : String.Empty) %> /> 
<asp:Button ID="btnSold" runat="server" Text="SOLD" class="btn btn-danger btn-block higher bold" <%#(Eval("Sold").ToString() == "0" ? "style='display:none'" : String.Empty) %> /> 

回答

2

测试并低于工作

的问题是style=display:none。创建一类像hidden和更新按钮:

<asp:Button ID="btnSold" runat="server" Text="SOLD" class='btn btn-danger btn-block higher bold <%#(Eval("Sold").ToString() == "0" ? "hidden" : String.Empty) %>' /> 

<asp:Button ID="btnMarkAsSold" OnClick="btnWantSell" runat="server" Text="Mark as sold" class='btn btn-warning btn-block higher bold <%#(Eval("Sold").ToString() == "1" ? "hidden" : String.Empty) %>' /> 

CSS

hidden{ display:none;} 

Visible属性

要使用按钮Visible财产中建议@马哈茂德的回答

<asp:Button ID="btnSold" runat="server" Text="SOLD" class="btn btn-danger btn-block higher bold" Visible="<%# Eval("Sold").ToString() == "0" ? false : true %>" /> 
+0

两者都有同样好的答案!谢谢! –

2

不能在服务器控件直接使用在线服务器标签但是,您可以在属性中这样做:

<asp:Button ID="btnSold" runat="server" Text="SOLD" class="btn btn-danger btn-block higher bold" Visible="<%# Eval("Sold").ToString() == "0" ? false : true %>" /> 
<asp:Button ID="btnMarkAsSold" OnClick="btnWantSell" runat="server" Text="Mark as sold" class="btn btn-warning btn-block higher bold" Visible="<%#Eval("Sold").ToString() == "1" ? false : true %> /> 
+0

两者都有同样好的答案!谢谢! –

相关问题