【问题标题】:Simulate ctrl click on Richfaces3.3 rich:extendedDataTable模拟 ctrl 点击 Richfaces3.3 rich:extendedDataTable
【发布时间】:2013-03-25 07:42:24
【问题描述】:

我一直在尝试向扩展数据表添加一些复选框。 所以我需要在点击复选框时模拟 ctrl-click 表格行。

我尝试使用:

var e = jQuery.Event("click");
          e.ctrlKey = true;
          jQuery(rowToClick).trigger(e);

但它永远不会起作用。 我试图从 rich:extendedDataTable 中获取 onRowClick 事件, event.ctrlKey 总是“假”。

<rich:extendedDataTable onRowClick="rowBeenclick(event);" ..../>

function rowBeenclick(e){
  debugger;
alert(e.ctrlKey);
}

对此有何想法或建议?

【问题讨论】:

  • P.S.它适用于 Richfaces4.x,但为此我需要在 RF3.3 中
  • 我只是弄清楚我自己!在这里分享:(太长了,所以我剪了两个帖子 IE/其他) //Do ctrl click function fireEvent(obj,evt){ var fireOnThis = obj; if(document.createEvent) {//for firefox or else var evObj = document.createEvent('MouseEvents'); evObj.initMouseEvent("点击", true, true, window, 1, 0, 0, 0, 0, true, false, false, false, 0, null); fireOnThis.dispatchEvent(evObj); } }
  • //Do ctrl click function fireEvent(obj,evt){ var fireOnThis = obj; if(document.createEventObject) {//对于 IE var evObj = document.createEventObject(); evObj.ctrlKey=真; fireOnThis.fireEvent('onclick', evObj); } }

标签: javascript jquery richfaces


【解决方案1】:

我只是弄清楚我自己!在这里分享:(太长了,所以我剪了两个帖子 IE/其他)

//Do ctrl click 
function fireEvent(obj,evt){
 var fireOnThis = obj; 
if(document.createEvent) {
//For firefox or else 
var evObj = document.createEvent('MouseEvents'); 
evObj.initMouseEvent("click", true, true, window, 1, 0, 0, 0, 0, true, false, false,         false, 0, null); 
fireOnThis.dispatchEvent( evObj ); } 
}
//Do ctrl click 
function fireEvent(obj,evt){
 var fireOnThis = obj; 
if(document.createEventObject) {
//For IE 
var evObj = document.createEventObject(); evObj.ctrlKey=true; fireOnThis.fireEvent('onclick', evObj); } 
}

【讨论】:

    猜你喜欢
    • 2012-07-26
    • 2021-01-04
    • 2018-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-27
    • 1970-01-01
    相关资源
    最近更新 更多