如何检查输入元素下方是否存在跨度,如果存在,我需要在该跨度下动态添加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>');
}
}
答案 0 :(得分:1)
通过将标记放在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小提琴: http://jsfiddle.net/Ha4CS/3/
答案 1 :(得分:0)
if(input.find('span').length)
{
// here do your stuff
}
else{// not exist
input.after('<div class="error_text">Required field</div>');
}