0

我有一个日历的表格行,我需要根据月份打开和关闭。

HTML:

<tr id="bottomrow" class="week" valign="top" style="display:none;">
        <td class="day" id="d36">
            <div class="daynumb" id="x36"></div>
        </td>
        <td class="day" id="d37">
            <div class="daynumb" id="x37"></div>
        </td>
        <td class="day" id="d38">
            <div class="daynumb" id="x38"></div>
        </td>
        <td class="day" id="d39">
            <div class="daynumb" id="x39"></div>
        </td>
        <td class="day" id="d40">
            <div class="daynumb" id="x40"></div>
        </td>
        <td class="day" id="d41">
            <div class="daynumb" id="x41"></div>
        </td>
        <td class="day" id="d42">
            <div class="daynumb" id="x42"></div>
        </td>
    </tr>

我尝试使用document.getElementByID('bottomrow').style.display = "none";,但它似乎没有工作......

JavaScript:

function february() {

document.getElementById('bottomrow').style.display = "none";

var numbdays = 28,
    offset = 5;

for (var date = 1; date <= numbdays; date++) {
    document.getElementById("x" + (date + offset)).innerHTML = date;
}
}

当页面加载时,该行仍然可见。我究竟做错了什么?

4

3 回答 3

1

你做对了,除了getElementByID不是一个函数。它必须是getElementById。注意小写d

document.getElementById("bottomrow").style.display = "none";
于 2013-02-16T23:30:22.267 回答
0

您应该正确处理页面的 ready 事件,因为页面上尚未加载 DOM 元素。jQuery 对此进行了抽象,但请查看这篇文章,了解如何在没有 jQuery 或其他库的情况下做到这一点。您需要确保处理以下指南将执行的浏览器差异。

$(document).ready 没有 jQuery 的等价物

于 2013-02-16T23:22:14.430 回答
0

该函数是否在 DOM 准备好之前运行?它不能对尚不存在的元素进行操作。

window.onload = function ()
{
  ...
} 
于 2013-02-16T23:19:49.000 回答