Js控制ASPX页面刷新的土办法

用JavaScript模拟控件事件刷新ASPX页面
在aspx页面里,客户端用JavaScript刷新页面时IE会提示重新提交,为仅刷新数据显示,可模拟控件激发事件动作。拖入隐藏的服务器控件checkbox,添加客户端js代码和CS页面处理事件代码,调用js的reload()方法即可刷新页面。

       我们知道在aspx页面里激发一个事件都需要把页面Post到服务器,这样如果在客户端通过调用javascript进行页面刷新,IE就会弹出提示框问是否重新提交,但是我们本意只是想刷新数据显示。怎么办呢,我想的办法就是模拟控件激发事件的动作,让.net误认为是改变了控件的状态或点击了刷新按钮,让页面Post达到刷新数据的作用。

       首先拖入一个服务器控件到aspx页面,设置此控件的ID,这里为了改变状态方便拖入的是checkbox,然后在此控件的代码里加上【style="DISPLAY: none"】这个属性意在隐藏此控件,但不能用【Visible=false】这样控件就不会加载到客户端了。控件的代码如此形式:【<asp:checkbox id="chkReload" style="DISPLAY:none" runat="server" AutoPostBack="True"></asp:checkbox>

       添加客户端js代码:

<script language="javascript">
function reload()
document.Form1.chkReload.checked 
= !document.Form1.chkReload.checked;
 __doPostBack('chkReload',''); 
}

</script>

CS页面加入处理此控件的事件代码:

private void chkReload_CheckedChanged(object sender, System.EventArgs e)
{
            Bind();
}

这样只要客户端调用js的reload()方法就可以刷新页面了,跟我们点击刷新按钮的效果一致。没有深入研究不知道有没有更好的办法。

转载于:https://www.cnblogs.com/Dragonpro/archive/2005/09/23/242894.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值