我有一个网页上的mp3产品正在销售。每个页面代表一个相册实体。至少每个页面包含一个专辑产品和至少一个或多个MP3可作为单独的产品购买。每个专辑和mp3产品都有一个输入[Type=Submit]按钮,它的功能相当于“添加到购物车”按钮。
一些MP3被指定为专辑。这是通过span标记使用标记完成的。
<span class=“album-only-tag”>True</span>
基于这个标记,我试图编写一些javascript,它将完成3件事情:
•删除包含价格的表格
•禁用submit按钮,这样用户就不能添加到购物车(他们必须购买相册)。
•将输入[type=“Submit”]的值更改为“Album only”。
此外,在代码按照mp3运行之后,它需要停止,并保持其他价格表&“添加到购物车”按钮不变。
这里的jQuery代码不工作。我想我对next()函数的使用是不正确的。
我应该使用什么jQuery函数来访问这个标记中的下一个表和下一个表单输入[type=“Submit”]按钮?
顺便说一句-这里的标记被缩写了。
<div class="views-row views-row-1 views-row-odd views-row-first">
<div class="ds- 1col node node--ltv-track-ii node-teaser node-product-type node--ltv-track-ii node-product-type-teaser node-ltv-track-ii-teaser view-mode-teaser node--teaser node--ltv-track-ii--teaser clearfix">
<span class="album-only-tag">True</span>
<table class="commerce-price-rrp-your-price">
<tr class="odd">
<td class="webprice-title">Price</td>
<td class="webprice-total">$5.95</td> </tr>
</table>
<div class="field field-name-field-product">
<form class="commerce-add-to-cart commerce-cart-add-to-cart-form-1909 commerce-cart-add-to-cart-form-1909" action="/ltvalbums/wah/lokaha" method="post" id="commerce-cart-add-to-cart-form-1909" accept-charset="UTF-8">
<div><input type="hidden" name="product_id" value="1909" />
<input type="hidden" name="form_build_id" value="form-qbskkxq4JIW0IEzmvAgwqow7QylhhgdtnfmqbHrdMe0" />
<input type="hidden" name="form_id" value="commerce_cart_add_to_cart_form_1909" />
<div id="edit-line-item-fields--2" class="form-wrapper"></div> <input type="submit" id="edit-submit--2" name="op" value="Add to cart" class="form-submit" />
</div>
</form>
</div>
非常感谢对此的任何帮助!
给你,
$('.album-only-tag').each(function () {
var table = $(this).next('table');
var submitBtn = table.next('div').find('input[type="submit"]');
// disable the add to cart button
submitBtn.prop('disabled', true);
// change the text to "Album only"
submitBtn.val("album only");
// remove the table
table.remove();
});