在Oracle APEX v4.2.2中,我有一個簡單的經典報告,它具有作爲第一列的複選框f50
附加到表的ID列,允許用戶檢查所有或特定的行並從報告/表中刪除這些記錄。如何在使用Ajax的Oracle APEX經典報告中刪除選定的複選框行
一個例子報告可能是這樣的:
ID Col2 Col3 Col4
----------------------------
1 10 20 30
2 5 8 9
3 92 88 12
4 1 2 44
5 95 77 88
我以後的要求是,我想,而不必提交整個執行這整個檢查的ID和消除這些記錄進行的過程頁面,但如果可能的話,希望通過AJAX方法使用apex.process.server
來完成。
UPDATE:剛上這一要求多一點的背景基礎上,我試圖鉤住這個apex.process.server複選框ID的報告,即:
ID報告中報告上述屬性欄標題的外觀像這樣:
<input type="checkbox" label="Select Code" onclick="$f_CheckFirstColumn(this)" />
鑽孔向下進入下HTML表達這個ID列是:
<input type="checkbox" #ID# value="#ID#" name="f50" id="f50_#ROWNUM#"/>
地區來源:
SELECT A.ID,
A.REQ_NO COL2,
A.CODE_ID||apex_item.hidden(20, A.CODE_ID)||apex_item.hidden(30, A.ID) COL3,
GROUP_VALUE COL4
FROM MY_TABLE A
WHERE A.REQ_NO = :REQ_NO
我相信序有APEX存儲陣列apex_application.g_f50.count
的ID內的值被刪除,需要提交的頁面。
使用apex.process.server
,它們在檢查時是否可以作爲Javascript數組傳遞給隨需應變進程,然後使用這些ID執行所需的刪除操作?
有關如何通過AJAX實現上述任何幫助意味着(根本不刷新頁面)將不勝感激。
謝謝。
你好Tom,感謝您的解決方案,但遺憾的是仍然遇到的問題與我有什麼的那一刻,並試圖以適應你的反饋到我的代碼。基於此,我已經更新了我上面的原始帖子,以包含我正在使用的陣列的更多信息,即針對ID和其他陣列的f50。我試圖將你的代碼加入到我的代碼中,但我認爲這個問題試圖找出你的PROCESS_CHECKS按需過程,確切地說選擇了哪些ID。根據我的更新,您是否能夠查看我需要從您的哪些更改,以便檢索已檢查的ID。 – tonyf
嗨湯姆,感謝您的更新的答案,但對不起,仍然試圖瞭解這一點,B/C我使用f30和f50非ajax數組,而不是說,f01和f02 ajax數組,這是我沒有看到任何檢查值進入我的ondemand過程?我需要使用f01和f02慣例來達到我想要實現的目標嗎?謝謝。 – tonyf
是的Tony,你可以用來發送數組到數據庫的數組僅限於20個數組,從f01到f20。這意味着,您需要從DOM中的名稱爲f30的元素收集數據,將它們存儲在JavaScript中的數組中,然後將該數組提供給您可以在按需過程中使用的其中一個數組。請記住,用於正常頁面提交的數組與按需無關。雖然不同的陣列可能會讓你失望,但它們根本不相關。 apex.server。過程文檔:「(例如,您可以設置標量參數x01 - x10和數組f01 - f20)。」 – Tom