我有一个页面,其中包含销售mp3产品的地方。每个页面代表一个专辑实体。 每个页面至少包含一个专辑产品,并且至少有一个或多个mp3可作为单独的产品购买。 每个专辑和mp3产品都有一个输入[type = submit]按钮,用作“添加到购物车”按钮。
有些mp3已被指定为专辑。这是通过span标记进行标记。
<span class=“album-only-tag”>True</span>
基于该标记,我正在尝试编写一些可以执行3项操作的JavaScript:
•删除包含价格的表格
•禁用提交按钮,因此用户无法添加到购物车(他们必须购买相册)。
•将输入[type =“submit”]的值更改为“仅限专辑”。
此外,在按照mp3运行代码后,它需要停止,并保留其他价格表&amp; “添加到购物车”按钮完好无损。
我的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>
非常感谢您提供任何帮助!
答案 0 :(得分:1)
你走了,
$('.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();
});