Javascript 检查不包括空格的div的长度
我有以下代码来检测某个div中是否有内容:Javascript 检查不包括空格的div的长度,javascript,jquery,Javascript,Jquery,我有以下代码来检测某个div中是否有内容: if ($(".bio").html().length > 0) { $('.author-info').hide(); } 我遇到的问题是,在某些情况下,.bio字段中可能有空格。我想检查长度,不包括空格。换句话说,检查div是否有内容,但空格不算作内容 我该怎么做 注意:我使用的是jQuery 2.1.1 您可以添加另一个条件来检查是否存在这样的空间: if (($(".bio").html().length > 0)&
if ($(".bio").html().length > 0) {
$('.author-info').hide();
}
我遇到的问题是,在某些情况下,.bio
字段中可能有空格。我想检查长度,不包括空格。换句话说,检查div是否有内容,但空格不算作内容
我该怎么做
注意:我使用的是jQuery 2.1.1 您可以添加另一个条件来检查是否存在这样的空间:
if (($(".bio").html().length > 0)&&($(".bio").text()!=" "))
{
$('.author-info').hide();
}
可以删除所有空格并检查结果的长度:
$(".bio").text().replace(/ /g, '').length > 0
我们还可以更一般地使用\s
选择所有空白:
$(函数(){
$(“.bio”)。每个(函数(){
如果($(this).text().replace(/\s/g',).length>0){
$(此)。在(”
参见作为@abl和@Purag的好答案的替代方案,您还可以手动循环文本,查找非空格字符:
var bioContent = $(".bio").html();
var hasContent = false;
var characterToIgnore = ' ';
for (var i=0;i<bioContent.length;i++){
if (bioContent[i] != characterToIgnore){
hasContent = true;
break;
}
}
var bioContent=$(“.bio”).html();
var hasContent=false;
变量characterToIgnore='';
对于(var i=0;i可能是@apaul34208的重复项-虽然我可以从这个问题中收集到答案,但不确定它是否是完全重复项。为什么要进行向下投票?如果进行向下投票,请留下评论。$(“.bio”).text()!=”)仅在“bio”元素中正好有一个空格时才起作用,因此如果有多个空格,则不起作用。
var bioContent = $(".bio").html();
var hasContent = false;
var characterToIgnore = ' ';
for (var i=0;i<bioContent.length;i++){
if (bioContent[i] != characterToIgnore){
hasContent = true;
break;
}
}