用于在div中查找输入的jQuery选择器

时间:2015-03-31 02:37:01

标签: javascript jquery html

我有这样的HTML:

<div class="s-item s-question">
    <label>label text</label>
    <div>
        <input name="s1" type="checkbox" class="switch-indeterminate k-input"
               data-indeterminate="true"
               data-on-text="Yes"
               data-off-text="No" />
    </div>
</div>

使用jQuery动态地,如何选择该输入?我想确定何时发生变化。

最高级别的div总是会有s-item级,但有时我可能会有一个按钮或一个选择框等,而不是一个复选框。

所以我想也许$('.s-item').find('select, input, button').change(function() { ... });可行吗?但它没有。

我该怎么办?

2 个答案:

答案 0 :(得分:2)

“更改”事件仅在inputselecttextarea元素上有效。它不起作用,因为您试图将其分配给button元素。

$('.s-item').find('select, input, textarea').change(function() { ... });

应该有用。

将一个班级分配给你关心的项目会更简洁,所以你可以做到

$(".s-change-watch").change(function() { ... });

更好地区分标记的语义(就像它的元素类型)和功能。

答案 1 :(得分:0)

您只需执行以下操作即可获取复选框,然后检查值

$('.s-item div input')

或者只是给输入一个id或类并选择它。