2013-10-28 171 views
0

您好我創建了有關特定產品的動態頁面,當我點擊添加到購物車按鈕 我想發送的文本框的值>我創建像通過動態創建的按鈕url傳遞動態文本輸入值?

$(document).on('pageshow','#productdetails', function() { 
    var pid = getURLParameter('pid'); 
    $.getJSON("http://vinoth.com/magento/api/rest/products/"+pid, function(data) { 
     if (data.is_in_stock == "1") { 
      var stock = "In Stock" 
     } 
     else { 
      var stock = "Out of Stock" 
     } 

     //var imageurl = 'http://vinoth.com/magento/api/rest/products/'+data.entity_id+'/images'; 
     // $.getJSON(imageurl,function(result){ 
     // $.each(result, function(j, k) { 

     $("div[data-role='content']").append('<h4>'+data.name+'</h4><img src=' + data.image_url + ' width="100%"><br><p><strong>Description: </strong>' + data.description + '</p><span><strong>Actual Price: </strong>' + data.regular_price_with_tax + ' INR</span><br><span><strong>Special Price: </strong>' + data.final_price_with_tax + ' INR</span><br/> <span><strong>Availablity: </strong>' + stock + '</span><br><div data-role="fieldcontain"><label name="quantity"><strong>Qty: </strong></label><input type="text" name="quantity" value="" data-mini="true" data-inline="true" size="30" id="qty"/></div>').trigger('create'); 

     var qty = $("#qty").val(); 


     $("div[data-role='content']").append('<a data-role="button" data-mini="true" data-inline="true" data-icon="plus" href="checkoutcart.html?pid=' + data.entity_id + '&quantity=' + $("#qty").val() + '" >Add to Cart</a>').trigger('create'); 

     //}); 
     // }); 
    }); 
}); 

頁我怎麼能得到qty輸入值傳遞addtocart按鈕鏈接?

+0

它已被追加到按鈕的查詢字符串,這是不是適合你? –

+0

@RoryMcCrossan是的不起作用 – Ben10

+0

你檢查過'qty'變量嗎?有數量存儲嗎? –

回答

0

如果我理解您的問題,II認爲你應該寫爲補充的點擊處理程序購物車鏈接,然後在點擊時建立網址,以便獲取用戶編輯的數量。目前,您在創建添加到購物車按鈕時已將網址硬編碼爲數量。

因此,附加的鏈接時,給它一個ID,和PID存儲在數據希塔爾建議:

$("div[data-role='content']").append('<a id="addtocart" data-pid="' + data.entity_id + '" data-role="button" data-mini="true" data-inline="true" data-icon="plus" href="#" >Add to Cart</a>').trigger('create'); 

然後添加處理程序:

$('#addtocart').on('click', function(){ 
    var url = checkoutcart.html?pid=' + $(this).data("pid") + '&quantity=' + $("#qty").val() + ' 
    $.mobile.changePage(url);// or location.href = url; 
}); 

如果我不明白問題,請創建一個小jsFiddle,演示它...

0

首先確保qty總是有一個值。

請使用data- *屬性不傳遞查詢字符串中的值。

$("div[data-role='content']").append('<a data-role="button" data-pid="' + $('#qty').val() + " data-mini="true" data-inline="true" data-icon="plus" href="checkoutcart.html?pid=' + data.entity_id + '&quantity=' + $("#qty").val() + '" >Add to Cart</a>').trigger('create'); 

,並添加到購物車使用該得到的PID值的點擊這裏要求:

$(this).data('pid'); 
+0

對我來說不工作 – Ben10

+0

你能發佈小提琴鏈接嗎? – Sheetal