我有这个jQuery函数,如果在选择框中没有设置任何选项,则会在标签上添加span
标记为“可选”的内容。
function setLabel() {
var label=$('label[for=person_address]');
if ($('select#person_organisation_id').val().length != 0) {
label.append(' <span>— optional</span>');
} else {
label.children().remove();
}
}
现在,每次选择新选项时,都会为标签添加新范围。如何检查跨度是否已存在,如果没有跨度,则仅添加跨度?
感谢您的帮助......
答案 0 :(得分:9)
尝试以下方法:
label.not(":has(span)").append(" <span>— optional</span>");
答案 1 :(得分:0)
如果您在代码
之后的标签使用中有多个范围function setLabel() {
var label=$('label[for=person_address]');
if ($('select#person_organisation_id').val().length != 0) {
if(label.find(".optional").length == 0){
label.append(' <span class="optional">— optional</span>');
}
} else {
label.children().remove();
}
}