2013-04-23 32 views
3

我想將產品ID分配給鏈接的值並傳遞給$ ajax,以便$ ajax可以使用此變量並將其傳遞給另一個php來更新購物車信息。但不幸的是,我沒有這樣做。如果我簡單地在$ ajax中設置var值,它會起作用。 以下是將值傳遞給$ ajax的鏈接。

<a id ="'.$row["id"].'" value ="100" href="javascript:void(0)" onclick="myCall();"> 

而在阿賈克斯我用:

script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> 
    <script> 
function myCall() { 
//var value = 50; 
var value = $(this).attr('value'); 
    var request = $.ajax({ 
     url: "ajax.php", 
     type: "GET", 
     data: ({id: value}), 
     //dataType: "html" 
    }); 

    request.done(function(msg) { 
     $(".bottomcorners").html(msg);   
    }); 

    request.fail(function(jqXHR, textStatus) { 
     alert("Request failed: " + textStatus); 
    }); 
} 

它失敗。

有人可以幫我嗎?順便說一句,我試圖使用​​。它的工作原理,但問題是它只顯示我添加的產品。它似乎對服務器沒有影響。無論如何,我的第二個問題是$ajax能讓我更新我的服務器中的購物車嗎?我正在使用舊版本的WAMP(1.6.4)!

+0

你的ajax.php中有什麼? 你爲什麼認爲沒有任何工作? 要查看服務器上只有客戶端JS會發生什麼情況,您可以在'$ .ajax'調用中重寫'success'函數 – 2013-04-23 11:23:40

回答

2

你應該通過這個值在錨:

<a id ="'.$row["id"].'" value ="100" href="javascript:void(0)" onclick="myCall(this);"> 

,並在通話時的功能,這應該是這樣的:

function myCall(that) { 
//var value = 50; 
var value = $(that).attr('value'); 
    var request = $.ajax({ 
     url: "ajax.php", 
     type: "GET", 
     data: ({id: value}), 
     //dataType: "html" 
    }); 
// and so on code 

編輯

如果你想要的ID和價值都使用以下代碼:

var value = $(that).attr('value'); 
var id = $(that).attr('id'); 

和在數據傳遞如下:

data: ({id: id, value: value}) 
+0

嗨,我試過了你的方法,但是...仍然失敗。 – user2295136 2013-04-23 11:40:01

+0

@ user2295136你想在id的基礎上更新值或值? – 2013-04-23 11:41:17

+0

我傳遞給ajax.php的ID是產品的實際ID。所以我想將這個ID傳遞給ajax.php,然後在ajax.php中,它將根據它的id將產品添加到購物車。 – user2295136 2013-04-23 11:57:45

1
var value = $(this).attr('value'); 

要檢索的值而不是ID(值= 「100」),它應該是:

var id = $(this).attr('id'); 

如果您想同時通過:

var request = $.ajax({ 
    url: "ajax.php", 
    type: "GET", 
    data: {id: id, value: value } 
    //dataType: "html" 
}); 

您也可以像這樣做:

$.get("ajax.php", {id: id, value: value}); 

關於你提到的第二個問題:

AJAX將執行「ajax.php」 在服務器,所以如果你在編輯您的購物車「ajax.php」它將正常工作。

+0

嘿,我也試過你的,但是......同樣的故事。實際上,在ajax.php中,爲了測試的目的,我使用random()來回顯某個數字。我可以得到隨機數。但下面的一堆不起作用。 $ ID = $ _GET ['id']; $ value = $ _GET ['value']; echo $ ID,$ value; – user2295136 2013-04-23 11:47:15

+0

您的兩個方法都可用於回顯ajax.php中的random()函數,但未能回顯id和值。任何其他建議?或線索? – user2295136 2013-04-23 11:54:06

+0

我不太明白,你可以請你發佈你的「ajax.php」嗎? – Naryl 2013-04-23 11:55:19