在jQuery中插入带有内容的标记,该标记位于空标记中
原始HTML:
4 ..."firstNumber" div tag repeats here... ..."secondNumber" div tag repeats here too but might contain content...
我使用以下代码来检查“secondNumber”div标签是否为空。 如果是,那么我想在“secondNumber”div标签内添加带有span标签的“0”,其中包含相同的“spanClass”名称。 但它不起作用……
jQuery(function ($) { if ($.trim($('.secondNumber').text()).length==0){ $(".secondNumber").wrapInner("0"); }; });
试试这个:
$('.secondNumber').each(function(i, el) { if($(this).find('.spanClass').length == 0) { $(this).html('0'); } });
编辑
$(function() { $('.secondNumber').each(function(i, el) { if($(this).find('.spanClass').length == 0) { $(this).html('0'); } }); });
为什么在知道内容为空时使用wrapInner? 为什么不:
$(".secondNumber").html('0');
编辑:
此外,看起来你的问题确实不是wrapInner(虽然我仍然认为.html()更好),而是你的引用阻碍了。 看看我的例子。 我在外面有单引号。 你有两组双引号,如果你不逃避内部引号组,它们将相互争用。
您的代码中存在语法错误,您应该使用class属性的单引号。
jQuery(function () { var $second = $('.secondNumber'); // caching the object if ( $.trim($second.text()).length == 0 ){ $second.wrapInner("0"); // or $second.append("...") // -----^ }; });