https://asdw.de/en/category/scriptcase-sniplets-en/
今天紀錄一篇:
一、如何將[儲存]按鈕,複製一個放在 FORM 的任何位置。
https://asdw.de/en/add-new-save-button-anywhere-on-scriptcase-form/
1. 建立一個 Label 的新欄位{save_it},然後將他放在自己希望的位置。
2. 在 OnLoad Event 中,寫上下面這段程式碼:
{save_it} = '<a href="javascript: nm_atualiza (\'alterar\');" id="sc_b_upd_t" onclick="nm_atualiza (\'alterar\');; return false;" class="scButton_default" title="Update record" style="vertical-align: middle; display:inline-block;">Click to save</a>';
這樣就好了。
二、Place Button at any place of Scriptcase Form / Grid
https://asdw.de/en/place-button-at-any-place-of-scriptcase-form-grid/
要在FORM/GRID 的上面、下面 TOOLBAR 的位置,建立一個按鈕,是很簡單的事情。
但有時候,我們會希望將按鈕放在 FORM 裡面 / GRID的 ROW 裡面。
怎麼做?
1. 建立一個 動作的 LINK(如果點擊這個按鈕)
最簡單的方法是,用 SC 的 Macro:
sc_make_link(Application, Parameters)
example:
$string_link = sc_make_link(grid_images, ref_object_type='contact';ref_object_id={id});
2. 建立一個 Label 欄位
例如:名稱為: {edit_picture}
3. 在 OnLoad Event 中設定值給該欄位:
{edit_pictures} = '<a href="' . $string_link . '" class="scButton_small" title="Edit the picture" style="vertical-align: middle; display:inline-block;">' . {lang_contact_edit_pictures} . '</a>';
三、Save the data of a Scriptcase form via Ajax Event or PHP
https://asdw.de/en/save-the-data-of-a-scriptcase-form-via-ajax-event-or-php/
有時候,需要儲存紀錄,而不要讓用戶去按儲存或加入等按鈕。怎麼辦?
1. 建立一個小小的 Javascript Method 在 SC 的FORM:
Programming > Javascript Methods > New Method
The name of that method in our sample is: ‘speichere’
The code of the method is only one line:
nm_atualiza ('alterar');
2. 設定使用者執行儲存的情境,例如用戶離開某一個欄位:
To save the content use the Ajax-event OnBlur or OnChange.
Sample: Save the data of the form when the user exits the field CityName:
在該AJAX EVENT 的定義中,使用這個程式碼:
sc_ajax_javascript('speochere', array());
這是 SC 的 macro,在 PHP 程式中呼叫 Javascript 的 method ,來儲存資料。
(我正在傷腦筋,如何在 Dashboard 中,一個 左邊的 Widget 執行程式完畢,然後呼叫讓右邊的 Widget 自動 reload,這個好像可以用。試試
哇!sc_ajax_javascript()只用在 FORM/CONTROL/CALANDAR,我的是 GRID!!不能用!哀!)
沒有留言:
張貼留言