javascript - 检查是否有两个或多个具有相同类的元素并启动一些事件

标签 javascript html arrays

我有三个具有以下结构的产品:
勾选框|标签(相同文本,但值的标签不同)|数量下拉列表(不同输入名称)

它们具有三个不同的标签“类”:

第一 - <label for="related-checkbox-7087458-Z22-00026">
第二 - <label for="related-checkbox-7087458-Z22-00027">
第三名 - <label for="related-checkbox-7087458-Z22-00028">

它们之间的共同点是文字:“包含免费保险”

我还有三个具有不同输入名称的 QTY(数量框):

第一 - name="related_products[7087458][2536][qty]"
第二 - name="related_products[7087458][2537][qty]"
第三名 - name="related_products[7087458][2538][qty]"

到目前为止,我知道如何将第一个产品的数量更改为“1”(默认为 0),但是我不确定如何使用不同的“标签”来定位第二个产品属性和不同的“输入名称”。我尝试添加第二个 if 语句,但这似乎不起作用。

请注意,我试图将包含以下文本的产品的数量更改为一个:包含免费保险

请看我的JSFIDDLE

最佳答案

JS 中的输入选择器太具体。
尝试将 JS 中的选择器(第 7 行)替换为:

var input = label.parentNode.nextElementSibling.nextElementSibling.querySelector('input[type‌​="text"].input-qty');

关于javascript - 检查是否有两个或多个具有相同类的元素并启动一些事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34808488/

相关文章:

javascript - 订阅时Angular 2更改数组值

javascript - 使用 javascript href 链接附加一次

c - 释放 C 中的 2D 数组。 "double free or corruption"和 "invalid next size"

c++ - 为什么我不能在 btAlignedObjectArray :quicksort? 中使用仿函数作为比较器函数

javascript - vue如何获取v-if中元素的元素引用

javascript - location.reload() 在移动设备上无法正常工作

javascript - 刷新时的 AngularJS Nginx 路由问题

c# - itextsharp.xmlworker 可以渲染嵌入的图像吗?

html - BootStrap 模态显示不正确

php - PHP 中列的总和