看板 Python 關於我們 聯絡資訊
請教各位 http://ppt.cc/mNX9 如果我在Django上寫一個新增編輯功能的網頁 在網頁中的button代表新增/編輯 我的新增跟編輯如果都用同一個template 你按下編輯的Button的時候會依照你選的紅色區塊哪個radio 在form的資料區塊中的每個欄位顯示該筆資料的資訊 讓使用者只需要填他要改的地方就可以 我現在的問題是 請問要怎麼讓我按下Button就能送radio的value到後台呢? 因為我目前學會的都是用submit的方式傳送資料 所以想請問一下這種情況有什麼方式可以解決呢? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.192.28.81
vagrants:如果不想用submit的話,可以用ajax送資料到後台 11/10 12:01
http://jsfiddle.net/p9c2L/ 上面是我寫的程式歡迎指教 我想問的是 您說不想用submit的話 是說我以上的問題可以用submit就可以解決嗎?(不用Ajax的話) 還有我的form的結尾好像這樣寫Eclipse上顯示有問題 請問form包覆的範圍有什麼規定或限制嗎? 因為我想說如果按編輯無法顯示該筆edit的資料 那麼至少當我送出時要能夠包含下面的radio可以讓後台接收 所以如果要修正的話form應該要怎麼排才符合語法呢? 順便請問一下 在排版上我是用float: left;來達成這個版面效果 如果我要讓#Button的區塊可以拉長接觸到#content 變成#Button跟#formTable兩個是平行的 請問在CSS上要怎麼設定呢? 謝謝 ※ 編輯: aoksc 來自: 123.192.28.81 (11/10 13:46) ※ 編輯: aoksc 來自: 123.192.28.81 (11/10 13:51)
icycandle:如果不想換頁的話,target可以指向特定的frame 11/10 23:28
icycandle:但是在UI上還是要做額外的提示工作 11/10 23:29
icycandle:總體說來免不了要寫javascript,所以Ajax還是不錯的選擇 11/10 23:29
timTan:form 可以大一點沒關係可以包住 button 11/11 02:03
timTan:你可以用 twitter bootstrap 排版。 11/11 02:05
timTan:submit 的時候,會把 radio 的資料送出去啊。 11/11 02:06
timTan:讓那兩個 button 都是 submit 吧 11/11 02:07
jcfrank:submit部份,官方tutorial 04也有喔. 11/11 09:32
jcfrank:簡單說, 就是把radio buttons的name="choice", 11/11 09:33
jcfrank:value={{choice.id}},在views.py就可以用 11/11 09:34
jcfrank:request.POST['choice']來拿到choice的id. 11/11 09:35
謝謝各位的意見 目前我的作法是add、edit、del用同一個template form包住整個網頁內容 並且在裡面放一個hidden的input 當我按下add的button時jQuery修改hidden的input的value值為-1 當我按下edit的button時jQuery修改hidden的input的value值為取得radio的值 當我按下del的button時jQuery修改hidden的input的value值為-2 並且隱藏form的內容只顯示submit按鍵 之後在views.py處理時判斷hidden的input的value 是-1就執行新增 -2就代表要刪除之後取得radio的值刪除 並且在每個欄位塞值避免傳送到views沒接到值出問題 最後就用radio的值找出要改的資料列執行edit的動作 目前就只剩要怎麼按下edit時可以找出該筆資料的內容並顯示在form的text上 有想過說按下edit時submit到views回傳form的內容讓原本的網頁填上找到的值 不過這個方法似乎還有很多地方會有問題還需再試試看 謝謝各位的意見 ※ 編輯: aoksc 來自: 211.79.198.240 (11/11 11:33)
timTan:你想到的方法沒什麼問題,能用! 11/11 17:32
關於按下edit之後form每個欄位要有該比id的相關資料 後來經別人提醒才想到這個問題其實很簡單… 一進去這個網頁底下就有每筆資料的list了 那麼我們就觸發radio的時候把那列資料裡面的td內容取出來塞到form不就好了 所以也不用Ajax就能解決這個問題囉 ※ 編輯: aoksc 來自: 123.192.28.81 (11/11 19:45)