怎么样去掉回传刷新整个页面问题总结

来源:互联网 发布:淘宝店铺利润表 编辑:程序博客网 时间:2024/04/29 20:16

 怎么样去掉<asp:Button></asp:Button>回传刷新整个页面问题总结

http://topic.csdn.net/u/20080928/01/9f2faddd-0b17-47c6-8699-da03f623c7e6.html

 

 

系统是asp.net2.0的。使用VS2005。使用了ajax。

<asp:Button ID="BtnSearch"  OnClientClick="ReqShopProductSales()" runat="server" Text=' <%$ Resources:Resource,Shop_Serach %>' />


这样一个服务器控件。ReqShopProductSales()是JavaScript的方法。客户端点击按钮的时候,ReqShopProductSales()执行成功,数据也成功取得了显示出来(通过alert测试证实,说明JavaScript没有问题)。但马上被asp:Button本身的特性--刷新,回传刷新了整个页面,使得页面上没有了数据。那么,有什么方法或者说怎么样设置,才能不让asp:Button刷新,保持ajax本身的无刷新效果??

已经尝试过几种方法,但没有成功。
例如去掉OnClientClick="ReqShopProductSales()",在!IsPostBack里加入BtnSearch.Attributes.Add("onclick", "return  ReqShopProductSales();");结果也不行,按钮仍然会刷新。

 

我的本来就是input的,由于Text=' <%$ Resources:Resource,Shop_Serach %>' 这句,我不得不改成 <asp:Button/>。

 

 

解决办法:

HTML code
<asp:Button ID="BtnSearch" OnClientClick="return ReqShopProductSales()" runat="server" Text=' <%$ Resources:Resource,Shop_Serach %>' /> <script>function ReqShopProductSales(){/*.....你的代码,*/return false;//=========================不提交表单,注意你上面的代码不要有return语句,如果有需要return false,不要return true;}</script>

 

 

 

总结:

关键是OnClientClick="return ReqShopProductSales()" 和return false;

OnClientClick="return ReqShopProductSales()" 少了个return是不行的。

总的来说,这是一个JavaScript使用技巧的问题,对JavaScript的理解深入与否的问题。

 

 

 

 

 

原创粉丝点击