Javascript JS if语句-innerHTML 函数着色(){ 对于(i=1;i

Javascript JS if语句-innerHTML 函数着色(){ 对于(i=1;i,javascript,if-statement,innerhtml,Javascript,If Statement,Innerhtml,如果stat.length始终等于1: function colorize(){ for(i = 1; i<=8; i++) { var id = document.getElementById('op' + i); var stat = id.innerHTML; document.write(stat + " "); if(stat == 1) { id.inner

如果
stat.length
始终等于1:

function colorize(){
    for(i = 1; i<=8; i++)
    {
        var id = document.getElementById('op' + i);

        var stat = id.innerHTML;
        document.write(stat + " ");
        if(stat == 1)
        {
            id.innerHTML = "<div style='background:#00FF00; width: 20px; height: 20px; border-radius: 15px;'></div>";
        }
        else{
            id.innerHTML = "<div style='background:#FF0000; width: 20px; height: 20px; border-radius: 15px;'></div>";
        }
    }
}
如果您要查找的是
stat
中的
1

if(stat[0]=='1'){
函数着色(){

对于(i=1;istat是字符串,1是数字。请尝试stat==“1”我试过了,但还是一样resolt@Thilo,是的,你是对的,它可能是innerHtml中的一个空格…但情况并非如此…你可以添加一个文档。在if和else分支中写入并发布结果吗?innerHtml中是否只有一个1或0?谢谢!我对stat.length进行了打印,结果返回了30,所以我找到了我要查找的内容g for在stat[22]@IgorGumush噢,天哪,看起来这是你的问题。另外,下次,请给我们一些关于
op[0-9]
div的外观的信息,而在这种特殊情况下,它并不重要(那么多),人们不应该仅仅使用
match
来检查字符串是否与模式匹配:使用
/pattern/.test(string)
。或者,如果您只需要检查某个字符串是否包含另一个字符串,请使用
someStr.indexOf(anotherStr)!=-1
if(stat.match(/1/)){//contains a 1, may contain more
function colorize(){
    for(i = 1; i<=8; i++)
    {
        var id = document.getElementById('op' + i);

        var stat = id.innerHTML;
        document.write(stat + " ");
        if(stat == "1")
        {
            id.innerHTML = "<div style='background:#00FF00; width: 20px; height: 20px; border-radius: 15px;'></div>";
        }
        else{
            id.innerHTML = "<div style='background:#FF0000; width: 20px; height: 20px; border-radius: 15px;'></div>";
        }
    }
}