document.getElementbyId()返回null

Uma*_*oon 12 javascript dom

在注释中标记为//错误的行的代码中.我收到Javascript错误说:"无法读取'null'的属性样式".我不知道它无法找到对象.我曾经想过并尝试过一切.请帮忙.这是代码:

<script type="text/javascript">

    $.getJSON('https://graph.facebook.com/647045111?fields=first_name&<%= Session["Token"] %>',

    function (data) {
        $('#userName').html(data.first_name);
    });

    document.getElementById('connectedUnregistered').style.display = 'block'; //Error

</script>

    <div id="userName"></div>

    <div id="disconnected" style="display:block;">

     <div id="heading">Facebook login</div> 

     <a href="Account/FacebookLogin" id="loginButton"><div id="fbConnectButton"><img src="/Content/Images/fbconnect.png"/></div></a>    

    </div>

     <div id="connectedUnregistered" style="display:none">

     <div id="heading">Register Now</div> 



    </div>
Run Code Online (Sandbox Code Playgroud)

Jul*_*les 26

您正在<div id="connectedUnregistered" />实际创建之前执行您的JavaScript代码.

另请注意,您没有关闭<div>相应的</div>.

因此,将您的javascript代码移到HTML下方的部分.或者在页面加载完成后执行它.如果您使用的是JQuery,则可以:

<script>

    $(document).ready(function() {

        ... your code ...

    });
</script>
Run Code Online (Sandbox Code Playgroud)


Bla*_*ger 6

将脚本放在 HTML 文档的末尾而不是开头,看看是否能解决问题。

JavaScript 无法编辑 DOM 元素,因为它尚未创建。