作者left (881 forever)
看板Web_Design
標題[急]XMLHttpRequest 與Django的問題
時間Mon Nov 17 11:52:36 2014
各位大大好
小弟目前正在研讀Head First JavaScript 深入淺出這本書
讀到了最後一章(Chapter 12 Dynamic Data)ajax的部分
書的網址
http://www.it-ebooks.info/book/103/
由於我只會Django不會php 所以想把書中的範例改成Django1.6的版本
程式碼如下列網址
http://examples.oreilly.com/9780596527747/
是否有人可以幫忙一下呢
小弟會以新台幣1000的酬勞作為答謝(依照科技部臨時工報賬流程 )
感謝
ps:若可以在今天下午5:00完成酬勞則提升為2000
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.218.124
※ 文章網址: http://webptt.com/m.aspx?n=bbs/Web_Design/M.1416196359.A.E33.html
1F:推 GoalBased: codejob板可以參考一下 11/17 12:25
2F:→ left: 因為我實在弄了好久 我在網路上找不到相關資料 大都是用 11/17 12:28
3F:→ left: jQuery 所以我想知道如果是直接用XMLHttpRequest 那該要怎 11/17 12:29
4F:→ left: 做. 11/17 12:30
5F:→ left: 本來是想po文討論的 因為實在有點趕 所以才用獎勵的方式 11/17 12:32
6F:推 oToToT: 懶得看code,但XMLHttpRequest就是一種物件 11/17 21:49
7F:→ oToToT: var http = new XMLHttpRequest()後 11/17 21:49
8F:→ oToToT: http.open("POST"/"GET" , url) 11/17 21:50
9F:→ oToToT: 就是說要連到哪,並用哪種method 11/17 21:50
10F:→ oToToT: 再來,寫送出並得到資料後要做啥: 11/17 21:51
11F:→ oToToT: http.onreadystatechange = function(){ 11/17 21:53
12F:→ oToToT: if(http.readyState == 4){ 11/17 21:53
13F:→ oToToT: //do something. 11/17 21:53
14F:→ oToToT: } 11/17 21:54
15F:→ oToToT: } 11/17 21:54
16F:→ oToToT: 然後http.send(data) 11/17 21:55
17F:→ oToToT: 啊...open那寫錯了QQ 11/17 21:56
18F:→ oToToT: 應該是http.open("POST"/"GET" , url+"?"+data) 11/17 21:56
19F:→ oToToT: 然後data是個字串,格式是"thing1=value1&thing2=value2". 11/17 21:57
謝謝您的回復
是這樣的,我目前Django的程度還沒有很夠
我現在遇到的問題癥結在於幾個點:
在views.py目前只會用簡單的
def functionname(request):
…..
return HttpResponse("...") or return render(request,...)
urls.py目前也只會處理到
url(r'^adminfun/$','adminfun'),
所以...
1.如果以上面的views.py以及urls.py這種簡單的形式,views.py要怎麼寫?
a)如果是post,怎麼從request抓出post過來的資料? return的地方要怎麼寫
使得browser 可以ajaxReq.getReadyState() == 4 && ajaxReq.getStatus() == 200
b)同上如果是get, a)要怎麼處理
2.如果views.py 以及 urls.py都設計好了,那麼ajaxReq.send()針對post
以及get裡面的參數分別要怎麼設定,目前你這邊寫的方式看不太懂哩
※ 編輯: left (140.112.218.124), 11/17/2014 22:50:08
20F:推 alog: 我覺得你要不要考慮去找有關Django ajax相關的範例? 11/17 22:57
21F:→ left: 打都只找到jquery的 因為時間緊迫才會找鄉民幫忙 11/17 23:05
22F:→ alog: 原生的Javascript很不好用 11/17 23:11
23F:→ alog: 因為那個太原始了,很多設計方法要另外重刻 11/17 23:11
24F:→ alog: ^^方式 11/17 23:12
25F:→ alog: 所以你應該大部分看到的是jQuery的範例 11/17 23:12
26F:→ alog: 他簡化掉很多不應該繼續重複處理的部份 11/17 23:12
27F:→ alog: 而且又能保證cross browser 11/17 23:12
29F:→ oToToT: 另外我是說data的話是個字串格式為 11/17 23:39
30F:→ oToToT: "資料1=內容1&資料2=內容2&......" 11/17 23:39
31F:→ oToToT: 如果要用GET送的話: 11/17 23:40
32F:→ oToToT: ajaxReq.open("GET",url+"?"+data) 11/17 23:40
33F:→ oToToT: 然後直接ajaxReq.send()就好 11/17 23:41
34F:→ oToToT: POST送的話則是ajaxReq.open("POST",url) 11/17 23:42
35F:→ oToToT: ajaxReq.send(data) 11/17 23:42
36F:推 DJoker: request.GET 跟 request.POST 可以拿到你傳上來的參數 11/19 12:26