数独(为网格对象赋值)

时间:2015-03-09 03:12:13

标签: javascript jquery html css

因此,为了解释我的尝试,我有一个用css设计的数独网格,以及一些用值初始化的网格。然后,对于没有价值的网格,我会动态设置一个输入'框。

我遇到的部分是如何将值设置为' grid []'对象,只有在数独填充了所有值之后。

这是一种正确的方法,我如何检查所有的''元素具有设置的innerHTML值,然后将这些值初始化为' grid [i] [j]'。

HTML

<table id="grid">
    <tr class="row">
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td>2</td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
    </tr>

    <tr class="row">
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td>4</td>
        <td></td>
        <td></td>
        <td></td>
    </tr>

    <tr class="row">
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
    </tr>

    <tr class="row">
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td>6</td>
        <td></td>
    </tr>

    <tr class="row">
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
    </tr>

    <tr class="row">
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
    </tr>

    <tr class="row">
        <td>1</td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
    </tr>

    <tr class="row">
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
    </tr>

    <tr class="row">
        <td></td>
        <td></td>
        <td></td>
        <td>9</td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
    </tr>
</table>

CSS

table{
    margin: 1em auto;
}

    tr:first-child{
        border-top:solid;
    }

    tr:nth-child(3n) td{
        border-bottom: solid;
    }

    td{
        height: 25px;
        width: 25px;
        border: 1px solid;
        text-align: center;
    }

    td:first-child{
        border-left: solid;
    }

    td:nth-child(3n){
        border-right: solid;
    }

    td input{
        height: 25px;
        width: 25px;
    }

的JavaScript

window.onload = function(){
    var grid = [];
    var obj = document.getElementsByTagName('td');
    for(var prop in obj){
        if(obj[prop].innerHTML == ''){
            obj[prop].innerHTML += '<input id="value" type="text" value="'+ obj[prop].innerHTML+'" />'
        }
    }
    setValues(grid);
};

function setValues(grid){
    for(var i =0; i < 9; i++){
        for(var j =0; j < 9; j++){
           grid[i][j] = '';
        }

    }
}

0 个答案:

没有答案