这是我的代码:
<div runat="server" class="slide">
<img src="images/picto_detail.gif" onclick='<%# Eval("CampagneRappelId","hideshow(\"details{0}\")")%>' />
<div id='details<%# Eval("CampagneRappelId")%>' style="display: none;">
<asp:ImageButton runat="server" ID="DownloadPdf" ImageUrl="~/images/download.png" />
</div>
JS&#34; hideshow(div)&#34;是一个简单的函数,如:
function hideshow(which) {
if (document.getElementById(which).style.display == "none")
document.getElementById(which).style.display = 'block';
else
document.getElementById(which).style.display = "none"
}
但我对asp:ImageButton有问题。当我点击它时,我有后面的代码将文件下载到用户计算机,但是当点击按钮时,div&#34;详细信息&#34;用显示器关闭:无......我无法找到原因。
编辑:我已经测试过类似的内容:
window.onload = function () {
document.getElementById("DownloadPdf").onclick = function (e) {
if (e && e.stopPropagation && someCriteriaToStopBubbling === true) {
e.stopPropagation();
}
else if (someCriteriaToStopBubbling === true) {
e = window.event;
e.cancelBubble = true;
}
}
};
感谢您的帮助。
答案 0 :(得分:0)
这是您可以使用图像隐藏和显示div的方法:
<script type="text/javascript">
$(function(){
$('#close').live('click',function(){
$('#main').show();
$('#login').hide();
});
});
</script>
<div style="float:right;"><a id="close">Close <img src="assets/close.png" /></a></div>
答案 1 :(得分:0)
好的我取消了PostBack:
<asp:UpdatePanel ID="UpdatePanel" runat="server">
<ContentTemplate>
<asp:ImageButton runat="server" ID="DownloadPdf" ImageUrl="~/images/download.png" />
</ContentTemplate>
</asp:UpdatePanel>
然后我将ImageButton放在里面。