我正在尝试使div
标签可点击。以下是它的标记:
<asp:Repeater ID="rptr" runat="server">
<ItemTemplate>
<div class="col-lg-4 col-md-4 col-sm-4 mb">
<div class="content-panel pn">
<div id="profile-01" style='<%# "background-image : url("+Eval("Photo").ToString()+") " %>'></div>
<div class="profile-01 centered" onclick="location.href='ProductDetails.aspx?ID=Eval("VendorItemID")' ">
<p><%# Eval("Name") %></p>
</div>
<div class="centered">
<h5><i class="fa fa-gift"></i><br/><%# Eval("Description") %></h5>
</div>
</div><! --/content-panel -->
</div><! --/col-md-4 -->
</ItemTemplate>
</asp:Repeater>
我的 C# 代码:
if (!IsPostBack)
{
VendorItemLogic vendorItem = new VendorItemLogic();
DataTable dt = vendorItem.populateProducts(Convert.ToInt32(Request.QueryString["ID"]));
rptr.DataSource = dt;
rptr.DataBind();
}
现在,当我使用 div
标签的事件onClick
当我使用Eval()
标签时出现错误时,我收到一个错误,说:属性名称必须后跟一个等号 (=) 和一个值。如果值用引号引起来,则引号必须匹配。
这是使用location.href
属性导航到其他页面的最佳方式吗?
我希望在 Eval 标签中使用该 ID 的目的是因为我想在其他页面上访问该 ID 并显示该特定产品的详细信息。
此属性
中缺少上下文切换到服务器代码
onclick="location.href='ProductDetails.aspx?ID=Eval("VendorItemID")' "
它应该是
onclick="location.href='ProductDetails.aspx?ID=<%# Eval("VendorItemID") %>' "