导航栏中执行翻页操作后,页面不刷新。

iampotato 2007-03-20
把ECSide整合到现有系统中,发现如标题所示问题。
系统框架:Webwork+Spring+IBatis
Web服务器:JBoss4.0.5.GA
具体表现如下(页面框架同ECSide Demo):
1、单击左侧“显示人员列表”一次后,右侧页面中显示出列表。
   查看后台输出,发现action被执行了两次,第一次是单击左侧菜单时执行的,第二次执行的是“<ec:table...”中的action。且从后台的输出结果可以看出,两次执行结果得到的起、止记录数不一样,总记录数共16条,第一次执行的结果显示是从0到10,第二次执行的结果显示却是从10到16。
2、单击导航栏“下一页”按钮,页面右上角显示红底白字“正在提交...”,从此页面定格。但查看后输出,执行的结果显示是从10到16。
请教fins,这是什么原因?
luneyq 2007-03-20
我的一个意外发现:
先找到下面两行代码:
/* end of fix a prototype bug */
var myAjax = new Ajax.Request( url,{requestHeaders:ECSideConstants.AJAX_HEADER,method: method, asynchronous: asy , parameters: pars, onComplete: resfunc } );

ecside_1[1].1_final_20070213版本的在1023行
ecside_full_1[1].25_20070314版本的在1095行
然后在下面随意加一行代码,例如引号里的部分:“anything;”

原因我没有查清楚。
顺便问一句,你们的项目也是用的板主例子里的过滤器吗???
retow 2007-03-20
引用
1、单击左侧“显示人员列表”一次后,右侧页面中显示出列表。
查看后台输出,发现action被执行了两次,第一次是单击左侧菜单时执行的,第二次执行的是“<ec:table...”中的action。且从后台的输出结果可以看出,两次执行结果得到的起、止记录数不一样,总记录数共16条,第一次执行的结果显示是从0到10,第二次执行的结果显示却是从10到16。

执行两次是正常的。
bjwulin 2007-03-20
执行两次是因为:
doPrep=true;
可以设置为false。
fins 2007-03-20
luneyq 写道
我的一个意外发现:
先找到下面两行代码:
/* end of fix a prototype bug */
var myAjax = new Ajax.Request( url,{requestHeaders:ECSideConstants.AJAX_HEADER,method: method, asynchronous: asy , parameters: pars, onComplete: resfunc } );

ecside_1[1].1_final_20070213版本的在1023行
ecside_full_1[1].25_20070314版本的在1095行
然后在下面随意加一行代码,例如引号里的部分:“anything;”

原因我没有查清楚。
顺便问一句,你们的项目也是用的板主例子里的过滤器吗???


??没看明白 
什么以外发现啊???
fins 2007-03-20
楼主使用ECSide的过滤器了吗?
iampotato 2007-03-21
项目中没有使用ECSide的过滤器,过滤器这一块是其它人写的,我负责把ECSide嵌入到项目中。
顺便问一下luneyq,你发现的意外是什么?
iampotato 2007-03-21
经过fins指点,经过测试可以翻页了,在web.xml加入过滤器即可,具体实现如下:
<filter>
     ...(自己系统的过滤器)...
</filter>

        <!-- 新加的过滤器 -->
<filter>
<filter-name>eXtremeExport</filter-name>
<filter-class>org.ecside.filter.ECSideFilter</filter-class>
<init-param> 
  <param-name>responseHeadersSetBeforeDoFilter</param-name> 
  <param-value>false</param-value> 
</init-param>
</filter>



<filter-mapping>
     ...(自己系统的过滤器mapping)...
</filter-mapping>

        <!-- 新加的过滤器mapping -->
<filter-mapping>
<filter-name>eXtremeExport</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>


注意:<filter>...</filter>应放在一起,<filter-mapping>...</filter-mapping>应放在一起,两个不能交叉放,否则<web-app>标签处会报错。
Global site tag (gtag.js) - Google Analytics