如何检查输入元素下方是否存在跨度,如果存在,我需要在该跨度下方动态添加一个 div
$('#submit_form .required_text').filter(':visible').each(function () {
var input = $(this);
input.next('div.error_text').remove();
input.removeClass('highlight');
if (!$(this).val()) {
input.addClass('highlight');
input.find('span'){
//then add the div after the span for this element alone
}
else{
input.after('<div class="error_text">Required field</div>');
}
}
最佳答案
通过将标记放在一个 var 中并将正确的元素选择到另一个 var 中来干燥代码。使用 .next()
选择输入后的元素。然后评估 nextElement 以确定它是否是跨度。
var input = $("input"), nextElement = input.next();
var divHtml = '<div class="error_text">Required field</div>';
var elem = ($(nextElement).is("span")) ? nextElement: input;
$(elem).after(divHtml);
JS fiddle : http://jsfiddle.net/Ha4CS/3/
关于jquery - 检查 span 元素是否存在,然后动态添加 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19563588/