【问题标题】:Display Based on innerHtml number根据 innerHtml 编号显示
【发布时间】:2015-04-11 03:49:12
【问题描述】:

我想创建一个系统,根据这个 innerhtml 内容的数字显示某些内容... 这是实际元素本身,17 只是我的数字,每个用户都不同:

<span id="your_div_id_diamonds"><dd><div class="field_uneditable">17</div></dd></span>

如果他们的号码在 10 到 20 之间,我希望它显示...这是我一直在尝试使用的代码,但它一次只能处理一个数字,目前无法正常工作...

$(function() {


if(document.getElementById('your_div_id_diamonds').innerHTML = "17") {
     document.getElementById('elitecontent').className="gotelite";
}
 else {
        document.getElementById('elitecontent').style.display="none";
    }
}



});

这是一个有效的版本,但一次只适用于一个数字......如果我让它上升到 150 或 200,那将是一个巨大的痛苦,否则我必须制作 200 个if 语句。

        $( "#lev1" ).load('/u' + _userdata.user_id + ' #field_id-14 dd', function() {

var divs= document.getElementsByClassName('field_uneditable');

for (var i = 0, len = divs.length; i < len; ++i) {

if(divs[i].innerHTML.indexOf("7") != 1) {
      document.getElementById('elitecontent').innerHTML="Elite";
}

else if(divs[i].innerHTML.indexOf("16") != -1) {
      document.getElementById('elitecontent').innerHTML="Elite";
}


else if(divs[i].innerHTML.indexOf("17") != -1) {
      document.getElementById('elitecontent').innerHTML="Elite";
}
 else {
      document.getElementById('elitecontent').innerHTML="Starter";
    }
}



});

我基本上想要一个与值类似的代码,我可以在其中放置 >=10 和 = 之类的内容

【问题讨论】:

    标签: javascript if-statement numbers innerhtml


    【解决方案1】:

    您当前代码面临的问题是您没有使用正确的比较语句 = 是声明性的,不用于比较。取而代之的是,您应该使用 ==(无论数据类型如何都匹配)或 ===(也必须匹配数据类型)

    $(function() {
    
    if(document.getElementById('your_div_id_diamonds').innerHTML = "17") {
         document.getElementById('elitecontent').className="gotelite";
    }else {
         document.getElementById('elitecontent').style.display="none";
    }
    }
    
    });
    

    应该是

    $(function() {
    
    if(document.getElementById('your_div_id_diamonds').innerHTML == "17") {
         document.getElementById('elitecontent').className="gotelite";
    }else {
         document.getElementById('elitecontent').style.display="none";
    }
    }
    
    });
    

    但是,根据您的需要,请遵循以下原则:

    $(function() {
    
    if(document.getElementById('your_div_id_diamonds').innerHTML <=20 && document.getElementById('your_div_id_diamonds').innerHTML >=10) {
         document.getElementById('elitecontent').className="gotelite";
    }else {
         document.getElementById('elitecontent').style.display="none";
    }
    }
    
    });
    

    应该可以。

    【讨论】:

    • 没问题!很高兴我能帮上忙
    猜你喜欢
    • 2016-04-21
    • 1970-01-01
    • 1970-01-01
    • 2014-05-05
    • 2023-03-08
    • 1970-01-01
    • 1970-01-01
    • 2010-11-04
    • 1970-01-01
    相关资源
    最近更新 更多