html来源:
<asp:ListView ID="lstviewclients" runat="server" onitemcommand="lstviewclients_ItemCommand">
<LayoutTemplate>
<img ID="itemPlaceHolder" runat="server"></img>
</LayoutTemplate>
<ItemTemplate>
<%-- <asp:Label ID="Label1" runat="server" Text='<%#Eval("schoolid") %>' class="valoflst" Visible="false"></asp:Label>--%>
<img class="div-shadow" ID="img" runat="server" src='<%#Eval("logo") %>'
title='<%#Eval("schoolname") %>' AlternateText='<%#Eval("schoolname") %>' alt='<%#Eval("schoolname") %>' onclick="ImageClick();" />
<asp:HiddenField ID="hfschoolid" Value='<%#Eval("schoolid") %>' runat="server" />
</ItemTemplate>
</asp:ListView>
我正在使用这样的脚本
function ImageClick( )
{
var hv = $('#hfschoolid').val();
alert(hv);
}
但是我无法获得隐藏字段的值!
答案 0 :(得分:0)
我不确定jquery是否可以找到asp:HiddenField,我建议您使用asp:label而不是asp:HiddenField并给它样式display:none。至少我确信Jquery可以找到标签。
我还建议你通过ClientID传递标签
答案 1 :(得分:0)
这是因为asp渲染控制id带有前缀。在jquery中,您可以通过匹配end中的id来查找元素。如下所示
var hv = $('[id$="hfschoolid"]').val();
尝试以上更改,让我知道它是否有效...