web頁面和服務器通信回調函數的一種思路和實現

ajax何時好用,但是有些html控件對ajax支持不夠好。比如ajax很難傳文件(我沒有說完全不能),而HTML自身提供了INPUT FILE控件用來上傳文件。這個控件除了有點過時以外,還是好用的。如果服務器想返回消息給客戶端,成功消息或出錯原因,和附件存放路徑,怎麼辦?INPUT FILE自身似乎是沒辦法完成這個的。他只負責上傳,然後上傳完了不能調用js。

在網上找到了一種思路,客戶端設置一個回調函數callback(msg),而服務器端在處理完upload過程之後,可以返回一個json串,裏面包含客戶端需要的信息,然後客戶端js函數響應調用,並接受參數消息,解析並顯示。

服務器關鍵代碼: echo "<script>parent.callback('".json_encode($arrayreponse)."')</script>";

客戶端關鍵代碼: function callback(json){。。。。。。。。。。。。。}

服務器端可以制定通信協議 :  json [0]成功或失敗    [1]失敗消息  [2]圖片存放路徑

這樣在服務器運行結束後,客戶端就能收到服務器返回的消息了。一個完美的交互過程。


       本文思路參照:http://blog.sina.com.cn/s/blog_573a052b0100nt0u.html   在這裏表示感謝

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章