2013-04-07 39 views
1

不知道哪個更有效。我想在另一頁上獲取產品的所有數據。我對ajax比較陌生。這是顯示產品的網格功能,當一個產品被點擊它進入到一個新的頁面,更詳細:

function ajaxfunction(json_data){ 
    var path = "images/products/shirts/smallthumbs/"; 
    var url = "Shirtbuy.php"; 
    var table = $("<table></table>"); 

//array iterates through json array 

    for (var i = 0; i < json_data.length ; i++){ 
    if (i %4==0) 
    var tr = $("<tr></tr>").appendTo(table);   
    $(tr).append('<td width="500">' + json_data[i].prod_name + '<br/>' + 

//See below, sending all the data through the url seems really messy. Does ajax.post achieve the same thing ? 

     '<a href="' + url +"?id="+ json_data[i].product_id + "&price=" +json_data[i].price+ '"><img src="' + path + json_data[i].pic + '"/></a>' + '<br/>' + 
     '\u00A3' + json_data[i].price + '</td>'); 
    }  

$("#maindisplay").append(table); 
} 
+0

取決於您是否使用'GET'或'POST'發送數據。使用jQuery並不是必需的,但是抽象出骯髒的工作。 – 2013-04-07 16:53:57

+1

基本上達到同樣的事情。獲取使用url字符串傳遞參數和post使用「form」方法。依靠。如果您使用ajax並將值返回給相同的頁面,而不是切換頁面,那麼實際上並不重要。但如果它切換頁面(傳統的PHP),那麼你很可能不希望你的用戶看到你的值的url字符串。 – Dnaso 2013-04-07 17:01:14

+0

作爲其產品表中唯一不敏感的數據,更多與速度有關。如何在上面的例子中使用ajax.get?使用php $ _GET我將不得不再次將數據編碼爲json,並假設這將是一個更及時的過程,而不是將變量發送給javascript,如果這樣做有道理 – chucky 2013-04-07 18:06:45

回答

0

如果操作是冪等的使用得到否則,如果它有一個持久的結果使用後的刷新可能導致操作兩次。還有其他一些問題需要考慮,例如,如果希望生成的頁面被緩存。 Teamtreehouse有一個很好的博文,你應該考慮。