我的问题与this相似,但答案并不适用于我,因为链接按钮的行为与正常的排序标题不同。
我们的网站使用Server.Transfer隐藏不同的网页访问在一个独特的网址。点击一个asp:LinkButton将导致首页,而不仅仅是排序的网格视图。
在查看客户端页代码时,我注意到普通列标题的工具提示如下
javascript:__doPostBack("(grid view control id)","Sort$(field name)");在使用LinkButton的具有自定义头模板的列上,它是
javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(
"(link button control id)", "", true, "", "", false,true);我认为区别是原因所在。
怎样才能让他们表现得一样呢?
更新
我注意到对于asp:Button而不是链接按钮,javascript单击事件调用
javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(
"(button control id)", "", true, "", "", false, false);而且这并不是头版头条。
因此,我似乎只需要设置链接按钮就不做客户端提交。但这样做的最佳方式是什么呢?
发布于 2017-04-28 06:40:15
使用下面的技巧,我做到了这一点。由于这是一种黑客行为,我仍然愿意看到更好的解决方法。
<asp:LinkButton href="javascript:void(0);"
OnClientClick="javascript:__doPostBack(this.id.replace(/_/g,'$'),'');" ...会阻止提交,因此不会切换到首页。它首先设置href属性,使其不会导致任何地方,然后在OnClientClick中触发LinkButton的回调事件。
它解决了我的问题,但它取决于ASP.NET生成It和事件目标标识符的实现细节。有没有更好的解决办法?
https://stackoverflow.com/questions/43672674
复制相似问题