如何使用javascript在php中隐藏div?

时间:2014-08-30 09:50:00

标签: javascript php

我有一个需要用php脚本隐藏的div。这是我到目前为止编写的代码......但是我没有得到确切的结果......

<?php
$s = "2";
if($s == "1")
{
echo "empty fr";
?>
<script type="text/javascript">document.getElementById('#ts').style.display = 'none';</script>
<?php
}
?>
<div id="ts"><label for="terry">Text<input type="checkbox" name="Terry" id="terry" value="1" /></label></div>

4 个答案:

答案 0 :(得分:2)

替换

document.getElementById('#ts').style.display = 'none';

通过

document.getElementById('ts').style.display = 'none';

答案 1 :(得分:2)

这里有两个问题。

首先,大多数回答者建议的那个。

document.getElementById('#ts').style.display = 'none';

你在这里不需要#。删除它。

document.getElementById('ts').style.display = 'none';

但是,还有另外一件事。您在加载要隐藏的元素之前调用此代码,因此它无法正常工作。你必须要么

  • 在元素隐藏后移动<script>

    <div id="ts"><label for="terry">Text<input type="checkbox" name="Terry" id="terry" value="1" /></label></div>
    <?php
    $s = "2";
    if($s == "1")
    {
    echo "empty fr";
    ?>
    <script type="text/javascript">document.getElementById('#ts').style.display = 'none';</script>
    <?php
    }
    ?>
    

    如果您发布的代码是该部分中的所有代码,则不会导致任何副作用,因为您没有在PHP的该部分中打印任何可见内容。

  • 使用onload事件。

    <?php
    $s = "2";
    if($s == "1")
    {
    echo "empty fr";
    ?>
    <script type="text/javascript">
    window.addEventListener("load", function(){
        document.getElementById('ts').style.display = 'none';
    });
    </script>
    <?php
    }
    ?>
    <div id="ts"><label for="terry">Text<input type="checkbox" name="Terry" id="terry" value="1" /></label></div>
    

    这会在页面加载时调用该函数。

答案 2 :(得分:0)

您在document.getElementById()

中不需要#

就像这样使用它

<script type="text/javascript">document.getElementById('ts').style.display = 'none';</script>

答案 3 :(得分:-1)

使用纯JavaScript #方法调用时,您无需使用getElementById字符。

所以,只需将您的电话改为:

document.getElementById('ts').style.display = 'none';

只有jQuery需要哈希字符,因为它使用Sizzle引擎作为选择器。

您可以详细了解方法调用here