Re: [問題] 想請教關於JavaScript傳值方面問題!

看板Web_Design作者 (愛睡喵)時間12年前 (2012/04/08 14:50), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
這裡提供兩種傳法 // ajax 傳法 function saveOrder() { var menu_queue = []; $('#menu1 li').each(function(){ menu_queue.push( $(this).text() ); }); $.post('order.php', {items: menu_queue}, function(response){ // 處理你的 response }); } // form 傳法 // 建立一個 html 表單然後把資料加進去,之後觸發 submit 事件 function saveOrder() { var form = [ '<form action="order.php" method="post">' ]; $('#menu1 li').each(function(){ form.push( '<input type="hidden" name="items[]" value="' + $(this).text() + '" />' ); }); form.push('</form>'); $(form.join('')).trigger('submit'); } 上面寫的兩種傳法都是使用 POST 方法,欄位名稱都是 items 所以後端的處理程序是一樣的 差別就是 form 傳法,會直接將頁面導到接收程式,所以 php 需要輸出完整的 html 回應 那 ajax 傳法就是停留在原頁,所以後端的輸出只需要輸出回應就好,不需要輸出整頁 因為上面的 ajax 例子沒有特別指明要 json 回應,所以 php 處理完之後,輸出的東西 看你 response handler 裡面會怎麼處理,php 就輸出什麼 如果 $.post 有要求 json 格式的回應,如 $.post(url, data, handler, 'json') 那 php 裡的回應要這樣做 // 上面處理完了 json_encode(array('content' => $content)); js 這邊的 response handler,這樣取得上面的 content function(response) { alert(response.content); } 請參考 http://api.jquery.com/category/ajax/ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.255.169.188 ※ 編輯: beatada 來自: 111.255.169.188 (04/09 21:24)

04/12 19:05, , 1F
非常感謝beatada大大幫我解惑 感恩Q_Q
04/12 19:05, 1F
文章代碼(AID): #1FWJL3ZA (Web_Design)
文章代碼(AID): #1FWJL3ZA (Web_Design)