使用 Div 标签的 location.href 属性时,Eval 不起作用



我正在尝试使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") %>' "

最新更新