-1

我循环遍历表格以找出单元格具有 csstdgreen。我给出了一个错误对象引用未设置为对象的实例。

 for(int i = 0; i < mytable.Rows.Count; i++)
            {
                for(int j = 0; j < mytable.Rows[i].Cells.Count; j++)
                {
                    if(mytable.Rows[i].Cells[j].Attributes["class"].Equals("csstdgreen"))
                    {

                    }
                }
            }
<table id="mytable" runat="server">
<tr class="csstablelisttd">
            <td>
                09:00AM
            </td>
            <td class="csstdgreen">
                00
            </td>
            <td class="csstdgreen" rowspan="3">
                John
            </td>
        </tr>
</table>
4

5 回答 5

2

在这部分:

<td>
    09:00AM
</td>

没有class属性。所以你需要检查它是否是null第一个:

if (mytable.Rows[i].Cells[j].Attributes["class"] != null &&
    mytable.Rows[i].Cells[j].Attributes["class"].Equals("csstdgreen")) { 

    // other code...

}
于 2012-07-04T07:35:02.007 回答
1

这个怎么样 ?

    for(int i = 0; i < mytable.Rows.Count; i++)
        {

    string cssClass ;
    for(int j = 0; j < mytable.Rows[i].Cells.Count; j++)
    {

    cssClass = mytable.Rows[i].Cells[j].Attributes["class"];

       if(cssClass != null)
        {
          if(cssClass != String.Empty)
          {}
        }

    }

}

于 2012-07-04T08:22:12.990 回答
0

我认为mytable.Rows[i].Cells[j].Attributes["class"]null你的情况下。

你需要检查这个null

if (mytable.Rows[i].Cells[j].Attributes["class"] != null)
于 2012-07-04T07:33:34.003 回答
0
if(Rows[i] != null)
    if(Cells[j] != null)
       if(Cells[j].Attributes["class"] != null)
于 2012-07-04T07:40:47.670 回答
0

要么检查 null 作为

if (mytable.Rows[i].Cells[j].Attributes["class"] != null)

或在您的

<td>      09:00AM  </td>  

部分作为

<td class="abc">      09:00AM  </td>  
于 2012-07-04T07:42:48.387 回答