Я пытаюсь динамически создавать asp-код на стороне клиента. У меня есть такой код:клиентская сторона aspx динамически создает asp-теги
<% foreach (Product item in ProductList())
{ <div class="prod_box">
<div class="center_prod_box">
Я хочу, чтобы добавить информацию о каждой из моих продуктов. У меня нет проблемы извлечения данных об элементе в простые HTML-теги, как это:
<div class="product_title"><%:item.Name %></div>
<div class="product_img"><img src="Images/<%:System.IO.File.Exists(Server.MapPath("~/Images/"+item.Image))?item.Image:"default_image.jpg"%>" alt="" width="60" height="60" border="0" /></div>
<div class="prod_price"> <span class="price"><%:item.Price%></span></div>
Как вы видите, <%: item.FIELD%> работает в любом теге HTML.
Но что, если я хочу, чтобы теги были объектами asp, а не просто HTML? Такого рода вещи не работает:
<asp:Button runat="server" Text="addToCart" class="prod_buy" OnClick="Add_Click" CommandArgument="<%#item.Code%>"/>
Я получаю сообщение об ошибке: «Название„элемент“не существует в текущем контексте».
Как я могу динамически создавать asp-объект на стороне клиента aspx?
В случае кнопки вы используете <% #, который является в основном привязкой данных, но нет никаких данных Bound управления, так что вам нужно использовать <% или <% : –
он просто распечатывает текст как есть, аргументы <%item.code%> и то же, что и с: – Programer
Попробуйте использовать 'CommandArgument =" <% # Eval ("item.Code")%> "' –