在我的项目中,我使用数据表,<p:column selectionMode="multiple" />
以便可以使用复选框多次选择条目。
但是,当用户单击一行时,之前的所有选择都将被取消选择,并且仅选择该行。这种行为出乎意料且令人讨厌。我想在行单击时禁用 rowSelect 和 rowUnselect 的行为,但似乎我没有办法,只能破解 datatable.js 的源。
以前有人实施过吗?谢谢回答。
使用:
素面3.5
莫哈拉 2.1.6
玻璃鱼 3.1.2.2
在我的项目中,我使用数据表,<p:column selectionMode="multiple" />
以便可以使用复选框多次选择条目。
但是,当用户单击一行时,之前的所有选择都将被取消选择,并且仅选择该行。这种行为出乎意料且令人讨厌。我想在行单击时禁用 rowSelect 和 rowUnselect 的行为,但似乎我没有办法,只能破解 datatable.js 的源。
以前有人实施过吗?谢谢回答。
使用:
素面3.5
莫哈拉 2.1.6
玻璃鱼 3.1.2.2
根据此功能请求,Primefaces 版本5.0.3和5.1现在支持此功能,只需将 rowSelectMode="checkbox" 添加到数据表即可。
文档参考(PF 5.1):
使用 rowSelectMode 选项自定义启用多选数据表的行单击的默认行为。默认值为“new”,清除先前的选择,“add”模式保持先前的选择与元键打开时通过鼠标单击选择行相同,“checkbox”模式仅允许使用复选框选择行。
将它放在您的页面中,可能有助于在您单击一行时停止选择。
$(document).ready(
function() {
$("tr td").click(function(event) {
if (!$(this).find("div").hasClass("ui-chkbox")
|| $(this).find("div").find("div").hasClass("ui-state-disabled")
|| this == event.target) {
event.stopPropagation();
}
});
});
this == event.target
单击复选框外的复选框列本身时,需要最后一个条件 ( )。