我在一个循环中绘制了一些复选框,我想根据我正在循环迭代的对象设置文本属性。
我有这样的事情:
<asp:CheckBox ID=
"CheckBox1 " runat=
"服务器" Text=
" <%= Html.Encode(item.nome) %>
" Checked="true"/>
问题是 Html.Encode(item.nome) 显示为纯文本,如果我不使用引号,我会收到错误消息。
我在一个循环中绘制了一些复选框,我想根据我正在循环迭代的对象设置文本属性。
我有这样的事情:
<asp:CheckBox ID=
"CheckBox1 " runat=
"服务器" Text=
" <%= Html.Encode(item.nome) %>
" Checked="true"/>
问题是 Html.Encode(item.nome) 显示为纯文本,如果我不使用引号,我会收到错误消息。
或者,使用Html.CheckBox
帮助程序。
<%= Html.CheckBox( "CheckBox1", true ) %> <%= Html.Encode(Item.none) %>
不要使用<asp:CheckBox>
控件 - 创建一个标准的 html 复选框:
<input type="checkbox" name="cb" checked="checked"><%= Html.Encode(item.nome) %></input>
不能将 ASP.NET 控件标记与<%= %>
语法混合。您在这里有两个选择:
为您的复选框使用原始 HTML,然后您就可以<%= %>
正常使用。这种风格更适合 ASP.NET MVC。
<input type="checkbox" name="cb" checked="checked"><%= Html.Encode(item.nome) %></input>
或者您可以使用 ASP.NET 控件友好的数据绑定语法:
<asp:CheckBox ID="CheckBox1" runat="server" Text='<%# Html.Encode(Container.DataItem, "nome") %>' Checked="true"/>
但是要使用数据绑定语法,您需要一个数据源控件并位于一个Repeater 控件中。有关详细信息,请参阅ASP.NET 数据绑定。