當您將列編輯的支援新增至資料表後,使用者就可以編輯資料表中的特定列,而不必導覽至另一頁。
使用者按一下資料表的列編輯直欄中的「編輯」按鈕。這時會出現一張表單,
使用者可以在這裡輸入新文字,並選擇儲存文字,或取消表單。
當您的資料表是只能顯示的表格時,這個選項特別有用。
如果要新增在資料表中編輯列的能力,請執行下列動作:
- 選取資料表。 這時會開啟資料表的「內容」視圖。
- 在資料表的「內容」視圖的列動作標籤中,
按一下「新增編輯直欄來啟動表單以進行列內容的即地編輯」旁的新增。 這時包含 JSP 畫面的新的列編輯直欄就會新增至資料表中。
- 現在您需要在新直欄中建立一張小表單,讓使用者能夠輕易地編輯列。
以下是建立該表單的方式之一:
- 開啟「頁面資料」視圖。將您在表格的唯讀組件中使用的資料拖曳至畫面
(jspPanel)。請確定您拖曳至畫面而非直欄。
這時會提示您建立新的控制項。
- 在顯示的「插入」對話框中,選擇要顯示、更新或建立記錄。
- 選擇您要顯示在新表單中的直欄。
對於您希望在表單中編輯的任何直欄,請務必將控制項類型變更為「輸入欄位」。
依預設,儲存和取消按鈕會出現在使用者所看見的表單中。
另一種方式是在畫面中建置您自己的表單。比方說,
您可以將 HTML 表格拖曳到畫面上,並加入輸入元件,
再把這些控制項連結到您用來建立表格的資料來源的對應資料欄位。
- 如果要使表單的變更回到資料庫,請執行下列動作:
- 選取新直欄中的「列編輯」元件。(如果您無法選取「列編輯」元件,
請到「內容」視圖選擇 hx:commandExRowEdit。) 這時會開啟「列編輯內容」視圖。
- 按一下「快速編輯」圖示來切換至「快速編輯」視圖,並在右窗格中輸入下列程式碼。
請將 "MyList" 取代為 SDO 關聯式清單的名稱:
try {
getMyListMediator().applyChanges((DataObject)((ECoreEList)getMyList()).getEObject());
}
catch (Throwable e) {
logException(e);
}
如果您使用 WDO,請在右窗格輸入下列程式碼,
並將 "MyList" 取代為 WDO 關聯式清單的名稱: try {
getMyListMediator().applyChanges(getMyList().getDataGraphAccessBean());
}
catch (Throwable e) {
logException(e);
}
請注意,這些程式碼範例只對 SDO 或 WDO 關聯式記錄和記錄清單有用。
- 您可以按一下新增規則,在「列編輯內容」視圖中設定導覽規則。這些規則識別執行動作時要前往的頁面。