我的代码如下所示
<asp:TemplateField FooterStyle-HorizontalAlign="Center" HeaderStyle-HorizontalAlign="Center"
HeaderStyle-CssClass="Column1">
<ItemTemplate>
<div class="Column1" style="visibility:<%# SetEditImagesVisibility()%>;">
<img src="" id="iEdit" alt="Edit" class='btntransparent' onclick="EditQC('<%#Eval("ID") %>')" />
<img src="" id="iDelete" alt="Delete" class='btntransparent' onclick="DeleteQ('<%#Eval("ID") %>')" />
</div>
</ItemTemplate>
<HeaderTemplate>
<div style="visibility:<%# SetAddImagesVisibility()%>;">
<img src="" alt="Add" class='btntransparent' id="iPlus" runat="server" onclick="AddTestingID()" />
</div>
</HeaderTemplate>
</asp:TemplateField>
这里我需要在javascript(iEdit和iDelete)中访问img tag id但是我收到错误 Server标记定义不明确 javascript代码如下所示
document.getElementsById('iEdit').src = HostedPath + 'pics/edit.gif';
document.getElementsById('iDelete').src = HostedPath + 'pics/edit.gif';
任何人请帮我解决这个问题。 提前致谢
答案 0 :(得分:0)
尝试更改onclick
这样的属性:
<img src="" id="iEdit" alt="Edit" class='btntransparent' onclick='<%# "EditQC(" + Eval("ID").ToString() + ")" %>' />
<img src="" id="iDelete" alt="Delete" class='btntransparent' onclick='<%# "DeleteQ(" + Eval("ID").ToString() + ")" %>' />
Eval
方法必须包装整个属性,而不是标记真的会被误认为。