所以我试图在点击按钮时将数据存储到页面上的变量,有多个按钮,它需要存储该特定按钮的数据。这些按钮中的每一个都嵌套在<form onsubmit></form>
内,我需要额外的所有数据都在此表单中的不同<input>
和<div>
标记中。所以使用javascript或jquery如何选择特定和标记的值。因此,当点击按钮时,它会将此产品添加到购物车,我想获取productNumber,price和quantity并将它们存储到我自己的变量中。单击按钮时,论坛会调用onsubmit =&#34; ShoppingCartAddAJAX(this);所以我想将这些数据存储在ShoppingCartAddAJAX函数中。
以下是页面上的一个表单。
<form method="post" name="addtocart-501" onsubmit="ShoppingCartAddAJAX( this ); return false;">
<input type="hidden" name="formName" value="ShoppingCartAddAJAX" />
<input type="hidden" name="productNumber" value="758201" />
<input id="qtyproduct" type="hidden" class="hiddenqty" name="dmst_Qty_2805" value="1" />
<div class="price">
<div class="pricenew singleprice">
$7.99
</div>
</div>
</a>
</div>
</div>
</li>
</form>
所以我一直试图通过做这样的事情来获取这些数据。
var pn = $('input[name$="productNumber"]').val();
var qty = $('input[id$="qtyproduct"]').val();
在我的javascript文件中,该函数看起来像这样:
function ShoppingCartAddAJAX(formElement, productNumber) {
var pn = $('formElement.input[name$="productNumber"]').val();
var aa = $('formElement[name$="productNumber"]').val();
var qty = $('input[id$="qtyproduct"]').val();
}
但是有很多代码......只是显示函数正在传递formElement和productNumber。
但是这给了我页面上第一个产品的产品编号和数量,我需要用户决定点击的按钮的数据,页面上有多个不仅仅是一个。我希望当单击按钮并触发该功能时,有一种方法可以查看它来自哪个论坛,然后提取该数据。我也希望能够得到价格,但它存储在<div class="pricenew singleprice"> $7.99</div>
。
非常感谢任何帮助。
答案 0 :(得分:1)
您正在获取第一条记录的产品编号和数量,因为表单中有多个输入字段,其名称为productNumber
(根据您的说明)。所以这里基本上发生的是当你调用$('input[name="productNumber"]').val()
时,jquery会返回第一个输入字段的值。而不是那样,在ShoppingCartAddAJAX
函数中执行类似的操作。
function ShoppingCartAddAJAX(form)
{
// Find child an element inside our form with the id of "qtyproduct"
// I used "find("#qtyproduct")" method so it searches anything nested inside your specific form element
// You can use "children("#qtyproduct")" method also
var qty = $(form).find("#qtyproduct").val();
var pn = $(form).find("input[name='productNumber']").val();
var pp = $(form).find(".pricenew.singleprice").text();
}