Internet Explorer 使用大量带有 valueChangeListener/ajax 的复选框非常慢
我有一个带有 html 表格的 jsf 站点,最多显示 300 行和 50 列。除了表头和第一列(某人的名字)外,所有单元格都包含一个复选框。
所以我有一个最多包含 15,000 个复选框的表单。
这是代码:
<h:form>
<table>
<a4j:repeat var="item" value="#{listBean.listItems}" rows="0" >
<tr>
<td>#{item.name}</td>
<a4j:repeat var="box" value="#{item.activations}" >
<td>
<a4j:region renderRegionOnly="true" >
<h:selectBooleanCheckbox value="#{box.checked}"
valueChangeListener="#{listBean.activationChanged}"
immediate="true" >
<a4j:support event="onchange" />
</h:selectBooleanCheckbox>
</a4j:region>
</td>
</a4j:repeat>
</tr>
</a4j:repeat>
</table>
</h:form>
如您所见,我已经使用区域来保持快速渲染。我需要使用 valueChangelistener,因为我们不能使用按钮来提交。 客户还希望避免在这里寻呼。
火狐浏览器速度非常快。但在 IE 中,检查单个框需要 3-5 秒。
有人可以帮我提高 IE 的性能吗?
谢谢!
问候
I have a jsf site with a html table, which shows up to 300 rows and 50 columns. Except the table-header and the first column (someones name) all the cells contain a checkbox.
So i have a form with up to 15.000 checkboxes.
Here's the code:
<h:form>
<table>
<a4j:repeat var="item" value="#{listBean.listItems}" rows="0" >
<tr>
<td>#{item.name}</td>
<a4j:repeat var="box" value="#{item.activations}" >
<td>
<a4j:region renderRegionOnly="true" >
<h:selectBooleanCheckbox value="#{box.checked}"
valueChangeListener="#{listBean.activationChanged}"
immediate="true" >
<a4j:support event="onchange" />
</h:selectBooleanCheckbox>
</a4j:region>
</td>
</a4j:repeat>
</tr>
</a4j:repeat>
</table>
</h:form>
As you can see, i already use regions to keep the rendering fast. I need to use the valueChangelistener, because we must not use a button for submitting.
The customer also wants to avoid paging here.
Firefox is very fast. But in IE the checking of a single box takes 3-5 seconds.
Can anybody help me increase the performance of IE here?
thx!
regards
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论