asp.net pager的eval函数和回发问题

时间:2011-03-17 22:14:53

标签: asp.net

在gridview中,我添加了此寻呼机:

<PagerSettings Mode="Numeric" Position="Bottom" /> 
<PagerStyle HorizontalAlign="Left" VerticalAlign="bottom" CssClass="MyPagerRow"/>

寻呼机呈现一个包含如下单元格的表:

<td><a href="javascript:__doPostBack(....)" class="MyPagerLink">pagenumber</a></td&GT;

ajax回发在updatepanel正常运行时非常有用。但是,如果用户按下单元格而不是精确地单击单元格内的文本,则回发不起作用,因为锚点链接到单元格内的文本而不是整个单元格。

所以我试图用这样的jquery来改变click事件:

    $('.MyPagerLink').each(function () {

        var TheLink = $(this).attr('href');
        var CellContent = $(this).html();

        var LinkExtract = TheLink.split(":");
        var PagerCell = $(this).parent();

        $(PagerCell).html('');
        $(PagerCell).html(CellContent);
        $(PagerCell).click(function () { eval(LinkExtract[1]); });

    }); 

这也适用于用户点击单元格时发生分页的意义。但是,现在点击不是部分ajax回发,而是触发整页回发。

我不知道为什么,但任何建议都会有所帮助。

感谢。

1 个答案:

答案 0 :(得分:0)

您可能希望在return false

之后的点击处理程序末尾eval(LinkExtract[1]);