Title1
Title2
Title3
Login
Link
Search
教學頻道
中信金融管理學院
點二下資訊社
新化社區大學
GAS+購物車開發
GAS專案
GAS+購物車開發
Google表單實戰電商購物車
GAS+LineBot開發
外帶內用管理
購物車管理
線上打卡系統管理
萬用表單5
LineBot 線上書籍
PHP專案
網站程式設計-PHP(10502)
網站程式設計-PHP
PHP SMARTY 樣板引擎
SMARTY樣板
課程教材
雲端工具入門
行動應用企劃人員養成班
萬用表單5
GAS+LineBot開發
研習
萬用表單5
鐵人賽-Google Apps Script整合運用
GAS+LineBot開發
樂齡3C學習不斷電
臺東專科學校
GAS 開發 LineBot 自動接單系統
德鍵
112行動應用企劃人員養成班
111網頁前端設計工程師培訓班
110網頁前端設計工程師培訓班
網頁前端設計工程師培訓班
old
網頁前端設計與開發運用培訓班
Javascript & JQUERY
免費釋出專案
萬用表單
自動資料查詢
台南社大
113-01-雲端工具入門
112-02-AI自動管理
112-01-用QRCODE打造自動化環境
110-01-用雲端打造自動化環境
用雲端打造自動化環境
Google雲端智慧王
讓雲端工具提昇工作效率
Google 速學工作術
台南市總圖
教你如何使用LINE Bot機器人增加工作效率
Google雲端工具基礎應用
Google雲端工具進階應用
工作自動化與行銷(台南社大)
全部教材
台南市人力發展中心
Google工具應用實務班
企業課程
鐳達實業有限公司
GAS研習-20200726
中正大學-GAS研習
將軍圖書館
Google雲端工具基礎應用
Google雲端工具進階應用
南方創客
GitHub 衍伸應用
Google 應用工作術
永康社大
用雲端打造自動化環境(110-春季班)
用雲端打造自動化環境
南關社大
電腦、手機生活應用
遠端桌面
公司業務
傳送檔案
adwcleaner
W10 更新
客戶網站
最近完工
深雋設計有限公司
新化社大校務系統
靚品科技有限公司
5C Precision Co., Ltd.
BALANCE 1
RWD網站
東北關廟麵
曼馱有限公司
永宸昕有限公司
昌美實業社
形象網站
勇信機械有限公司
GAS專案
聯絡我們&案件委託
所有書籍
「GAS+購物車開發」目錄
MarkDown
6-1 規劃訂單結構
1. 萬用產生器安裝&設定
2. 開發模版安裝&設定
2-1 Line Bot 綁定
3. 商品類別
3-1 程式碼貼上後動作
3-2 程式運作講解
3-2-1 v5 與v6 版本差異
3-2-2 程式流程(路由)
3-2-3 選單menu
3-2-4 欄位結構
4. 商品
4-1 規劃商品結構
4-2 程式排序
4-3 結構細節
5. 讓 chatGPT 產生實際需要的資料
5-1 拿資料去問AI 產生函式
5-2 目前客戶執行專案遇到問題解決
5-3 升級至 v6.0.3
5-3-1 升級v603-程式碼.gs
5-3-2 升級v603-2
5-3-3 升級v603-3
5-3-4 升級v603-4
5-4 拿商品資料,用AI產生購物車前、後台語法
5-4-1 拿商品資料,用AI產生購物車前、後台語法 - 2
5-4-2 拿商品資料,用AI產生購物車前、後台語法 -4
5-4-3 修正商品訂購數量
5-4-4 格式化購物清單
5-4-5 購物車樣版
5-4-6 增加 設定 favicon
6. 訂單管理
6-1 規劃訂單結構
6-2 購物清單值處理
7. 萬用產生器手冊
7-1 Bootstrap 折疊 (Collapse)
7-2 升級 v6.0.1
7. 萬用產生器手冊
GAS+購物車開發 ========= ### YT影片: 1. 購物清單值處理 - 1:[
https://youtu.be/UfewfNmmf1U
](https://youtu.be/UfewfNmmf1U) 2. 購物清單值處理 - 2:[
https://youtu.be/lm\_doTxa67w
](https://youtu.be/lm_doTxa67w) ### ### 在 cart1.html 搜尋「document.getElementById('submitOrder')」 ### 開關按鈕與Loading ### html ```php
載入中...
資料處理中...
``` ### js ```javascript // 關閉送出 document.getElementById('submitOrder').disabled = true; // 顯示 loading document.getElementById('loading').style.display = 'flex'; // 開啟送出 document.getElementById('submitOrder').disabled = false; // 隱藏 loading document.getElementById('loading').style.display = 'none'; ``` ### ### 表單值處理 cart轉換:
```javascript // 表單值處理 orderData.sn = ''; orderData.date = ''; orderData.no = ''; orderData.userId = '';//屆時會從Line Bot傳過來 orderData.total = document.getElementById('totalAmount').textContent; orderData.receive = ''; orderData.status = '訂單成立'; orderData.cart = JSON.stringify(Object.values(cart)); // 使用 Object.values() 直接取得物件中所有的值並轉成陣列 // console.log(Object.values(cart)) ``` ### 調用後台儲存
調用後台函數 基本語法
```javascript try { // 調用後台函數 google.script.run .withSuccessHandler(onSuccess) // 成功處理函數 .withFailureHandler(onFailure) // 失敗處理函數 .調用函數(value) // 調用函數 } catch (error) { // 錯誤處理 console.log('發生錯誤: ' + error); return '處理過程發生錯誤'; } ```
template\_form.html
```javascript google.script.run.withSuccessHandler(onSuccess)[insert_op](formData); ``` \[insert\_op\] 直接改成 .insert\_sheet\_order\_cart(
formData
);//
formData -> orderData
```javascript // 時間戳記 if (stru[i]['form_fun'] === "時間戳記") {//判斷功能是否為 時間戳記 formData[stru[i]['form_name']] = Utilities.formatDate(new Date(), "GMT+08:00", "yyyy/MM/dd HH:mm:ss");//2020/06/13/ 23:06 stru[i]['form_type'] = "文字"; } ``` 改為多判斷 「formData\[stru\[i\]\['form\_name'\]\]」是空值時,才由程式建立 日期時間 ```javascript // 時間戳記 if (stru[i]['form_fun'] === "時間戳記" && !formData[stru[i]['form_name']]) {//判斷功能是否為 時間戳記 formData[stru[i]['form_name']] = Utilities.formatDate(new Date(), "GMT+08:00", "yyyy/MM/dd HH:mm:ss");//2020/06/13/ 23:06 stru[i]['form_type'] = "文字"; } ``` ### 儲後回傳 再將回傳,渲染一個訂單完成畫面 ```javascript respond = { result: true, message: "Success", row: formData } ``` 函數 ```javascript /*=============================== 資料寫入成功,回傳 ===============================*/ function onSuccess(html) { var div = document.getElementById('show'); div.innerHTML = html; } /*=============================== 資料寫入失敗,回傳 ===============================*/ function onFailure(html) { var div = document.getElementById('show'); div.innerHTML = html; } ```