ASP.NET LinkButton点击无法触发div内容打印函数如何解决
问题解决方案
核心错误原因
- 函数名大小写不匹配:你定义的JS函数名为
PrintDiv()(首字母P大写),但LinkButton的OnClientClick中写的是printDiv()(首字母p小写),JavaScript大小写敏感,无法匹配到对应函数。 - 未阻止LinkButton默认回发:ASP.NET LinkButton默认点击后会触发页面回发,就算JS执行也会因页面刷新导致打印逻辑失效。
修正后的代码
LinkButton代码修正
<asp:LinkButton Width="130px" Height="50px" ID="print" CssClass="btns" runat="server" OnClientClick="return PrintDiv();" >Print</asp:LinkButton>
修改点说明:
- 将
printDiv()改为和JS定义完全一致的PrintDiv() - 在函数调用前增加
return,接收JS函数返回的false,即可阻止LinkButton的默认回发行为。
额外排查点
你提供的待打印div代码未设置id="dvContents",而你的JS逻辑是通过该id获取待打印内容的,需要补全div的id属性:
<div id="dvContents"> This is a test </div>
内容的提问来源于stack exchange,提问作者rimi
相关产品推荐
相关产品推荐

