我開發的POS應用程序,我正在尋找條形碼(它在產品表保存在數據庫中)後取回產品插入相同的記錄如何更新表,還有就是添加上車按鈕,我點擊將在數據庫中的訂單表中添加產品詳細信息,價格和數量,並在添加到數據庫後顯示,如果我輸入相同的產品,則應增加其價格和數量。當使用jQuery和AJAX
當我點擊添加購物車的同一產品時,它從數據庫中檢索更新數量和價格的記錄,但它添加新行而不是更新現有行(因爲追加)有沒有其他方式可以創建表,這樣每次我都不必追加一個新行。
$(document).ready(function(){
$("#submit").click(function(event){
var barcode=$(this).closest("tr").find("td:nth-child(1)").text();
var product=$(this).closest("tr").find("td:nth-child(2)").text();
var price=$(this).closest("tr").find("td:nth-child(3)").text();
var order={"barcodeid":barcode,"pname":product,"price":price,"qty":1}
console.log(orderid);
$.ajax({
type:'POST',
url:'/pos/addproduct',
dataType: "json",
data:JSON.stringify(order),
contentType: "application/json; charset=utf-8",
success:
function(data){
$.each(data,function(index,value){
var row=$("<tr><td>"+value.oid+"</td>"+"<td>"+value.pname+"</td>"+
"<td>"+value.qty+"</td>"+"<td>"+value.price+"</td>"+"<td>"
+value.barcodeid+"</td></tr>");
$("#order").append(row).removeClass("hidden");
})
}
})
});
})
和順序表
<table id="order" class="hidden" align="center">
<tr>
<th>OrderId</th>
<th>ProductName</th>
<th>Quantity</th>
<th>Price</th>
<th>Barcode</th>
</tr>
<tr >
</table>
我建議你事先創建你的ajax調用表。然後將唯一的id(uuid)關聯到數據庫中的每個產品。然後在你的表格中,每行都會有一個與產品自己的uuid相匹配的id。在你的成功方法中,首先嚐試獲得$(#uuid):如果它返回某個東西,這意味着你之前已經拿起了這個產品,只需要獲得數量單元格(你可以通過在數量td上放置一個名稱屬性來實現) ,否則就像你今天所做的那樣創建一個新行(但是在tr上使用id = uuid屬性,在qty td上使用name =「qtyCell」)。 – Zzirconium
我希望只有當有人點擊時才能創建表添加購物車按鈕 – shashank
爲什麼在成功功能中使用$ .each?你的服務器在POST回調響應中放置了什麼? – Zzirconium