代码之家  ›  专栏  ›  技术社区  ›  codeNinja

表单提交[关闭]上未显示DIV

  •  -4
  • codeNinja  · 技术社区  · 7 年前

    当用户提交“我的表单”时,我希望他们看到一条包含在隐藏分区中的加载消息。下面是我的表单定义:

    <form id="billingform" onsubmit="console.log('cool bean 0');alert('Form submitted!');document.getElementById['processingOveraly'].style.display = 'block'; console.log('cool bean');" class="form-horizontal" action="" method="post" novalidate="novalidate">
    

    这是我的部门代码

    <div id="processingOveraly" style="text-align:center;display:none;">
                <div class="loader">We are processing your order. This may take a few moments...</div>
            </div>
    

    当用户单击按钮时,我可以看到第一个 console.log 声明和 alert 语句执行。第二个 控制台日志 语句不执行。这告诉我这条线上有什么东西断了。

    document.getElementById['processingOveraly'].style.display = 'block';
    

    我在控制台中没有看到任何错误。问题可能是什么?

    1 回复  |  直到 7 年前
        1
  •  4
  •   Marco    7 年前

    你需要用括号( ( ) )而不是括号( [ ] document.getElementById .

    你做到了:

    document.getElementById['processingOveraly'].style.display = 'block';
    

    应该是什么时候:

    document.getElementById('processingOveraly').style.display = 'block';
    

    这是因为 documentGetElementById 是一个 功能 ,而不是 对象 . 函数通过括号接受参数,而对象使用括号返回对象的子级。