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

王朝asp·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

我们知道在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()方法就可以刷新页面了,跟我们点击刷新按钮的效果一致。没有深入研究不知道有没有更好的办法。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航