我的问题是一个非常普遍的问题: 当动态类添加到元素时(例如通过任何 jQuery-ui 的附加组件), 并且该元素上已经有类,动态添加的类是否附加或前置到类列表中?
为什么问题基于以下内容: 我试图选择具有以标识符(例如 title_ )开头的动态类的所有元素,因此我只需编写 $('[class^title_]')。
我担心的是另一个开发人员可能会向该元素添加 $.datepicker (例如),从而向该元素添加另一个类,并且如果这些类被添加到该元素 - there goes my selector
提前致谢
这是我的情况:显示 Coldfusion cfloop 创建复选框:
<cfset lbls = {"test1" = "Test one","test2" = "Test two","test3" = "Test three","test4" = "Test four","test5" = "Test five"}>
<cfloop collection=#lbls# item="num">
<cfoutput>
<tr>
<td><label>#lbls['#num#']#</label>
<td><input type="checkbox" class="form_test test_#num#" value="#num#" name="test_yes" ></td>
<td><input type="checkbox" class="form_test test_#num#" value="#num#" name="test_no" ></td>
</tr>
</cfoutput>
</cfloop>
我会动态地为 5 个类别创建动态复选框(是或否)(循环冷融合列表来创建它们)[它们不是允许用户取消选中所有类别的单选框]。那么我如何引用“其他”复选框? 我不能使用siblings(),因为它们位于单独的td中。我可以去 parent 那里选择parents('th').children(':checkbox').not(this),但我希望有一个更短的方法。
最佳答案
它们是附加的,但您不应该依赖它。
更好的解决方法是附加通用标识类和更具体的类:
<elem class="title title_foo"> ... </elem>
如果您想要所有此类元素,然后使用最小类选择器选择前者:
$('.title')
这将比使用属性匹配选择器方式更加高效和可靠。
关于javascript - 动态类: are they prepended or appended?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21682045/