如何使用PHP的jQuery对象?

use*_*407 5 php jquery

为什么这不起作用?这是身体的第一件事:

<?php
    if(isset($_POST['submit'])){
        echo "<script>$('.classToShow').show();</script>";
    }else{
        echo "<script>$('.classToShow').show();</script>";
    }
?>
Run Code Online (Sandbox Code Playgroud)

classToShow是一个简单的div.它不会显示,它不依赖于布尔条件,它必须是代码...

虽然这有效:

<?php
    if(isset($_POST['submit'])){
        echo "<script>alert('works');</script>";
    }else{
        echo "<script>alert('works');</script>";
    }
?>
Run Code Online (Sandbox Code Playgroud)

所以简单的JavaScript工作,但jQuery不...这是为什么?

jer*_*oen 5

这是你的问题:

这是身体的第一件事

此时,具有类的元素classToShow尚不存在,因此没有任何反应.在运行该代码之前,您应该等待DOM准备就绪.

另一方面,如果您只想在发出POST请求时显示某些内容,可以使用php直接添加它,之后您不需要jQuery来执行此操作.

一个常见的解决方案是直接使用php显示它,然后使用javascript在一定的超时后隐藏消息.