我將ASP.NET應用程序附加到單元格oncontextmenu
函數string.Format("OnCellContextMenu({0}, '{1}', true, true)", e.VisibleIndex, e.DataColumn.FieldName)
。Firefox和IE9中的Javascript事件
在我的JS我定義以下功能。
function OnCellContextMenu(visibleIndex, fieldName, hasNote, hasValue) {
currentVisibleIndex = visibleIndex;
currentFieldName = fieldName;
if (fieldName == "Name" || fieldName == "TOTAL") {
EnableMenuItem('AddNote', false);
EnableMenuItem('EditNote', false);
EnableMenuItem('RemoveNote', false);
}
else {
EnableMenuItem('AddNote', !hasNote && hasValue);
EnableMenuItem('EditNote', hasNote);
EnableMenuItem('RemoveNote', hasNote);
}
window.event.returnValue = false;
gvPrevisions.SetFocusedRowIndex(visibleIndex);
GridMenu.ShowAtPos(ASPxClientUtils.GetEventX(event), ASPxClientUtils.GetEventY(event));
}
現在,IE工程properlly,但在Firefox window.event.returnValue = false;
不執行它。我搜索了一下,看看Firefox如何處理這個返回值,我得到了我應該調用e.preventDefault();
insadad window.event。問題是在我的功能e
是未定義的。
你能幫我找到一個適用於FF和IE的解決方案嗎?
感謝
你期望發生什麼? – Jivings 2012-04-04 12:36:38
防止瀏覽器菜單右鍵單擊並顯示我自己的。 – MaiOM 2012-04-04 12:39:36
使用此。 if(window.event.preventDefault){window.event.preventDefault(); } – Ramesh 2012-04-04 12:42:14