Javascript jquery没有输出

Javascript jquery没有输出,javascript,php,jquery,Javascript,Php,Jquery,嗨,我正试图用jquery从php文件中输出一些东西。。php文件包含一个if-else语句,并且我能够输出if部分中的内容,但是当逻辑转到else部分时,就不会输出任何内容。我感到困惑 以下是jquery代码: $(document).ready(function(){ $('#submitNewExam').click(function(e){ e.preventDefault(); var newExam = $('#newExam').val();

嗨,我正试图用jquery从php文件中输出一些东西。。php文件包含一个if-else语句,并且我能够输出if部分中的内容,但是当逻辑转到else部分时,就不会输出任何内容。我感到困惑

以下是jquery代码:

$(document).ready(function(){
    $('#submitNewExam').click(function(e){
        e.preventDefault();
        var newExam = $('#newExam').val();
        if ($.trim(newExam) != ''){
            $.post('functions/addExam.php', { newExam: newExam }, function(data){
                $('#notify').html(data);
                $('.alert').toggle();
            });
        }
        $('.add').toggle();
    });
});
以及php代码:

include ('resources/addExamClass.php');
if(isset($_POST['newExam'])){
    if(preg_match('/(<|>|"|%3c|%3e|%22)/', $_POST['newExam'])){
        echo "illegal characters found !!!";
    } else {
        $newExam = new addExam();
        $newExam->CQuiz($_POST['newExam']);
        echo "correct";
    }
}   
include('resources/addExamClass.php');
如果(isset($_POST['newExam'])){
如果(preg|u match('/(|“|%3c |%3e |%22)/”,$_POST['newExam'])){
回显“发现非法字符!!!”;
}否则{
$newExam=新的addExam();
$newExam->CQuiz($_POST['newExam']);
呼应“正确”;
}
}   
如果preg_匹配,我可以在开发者工具/网络中看到200 ok,jquery得到响应。
如果preg_匹配不匹配,我可以看到302,然后是404。

根据我的评论,使用php urlencode,您就不需要太担心preg_匹配。只需将传入的变量设置为

$name=urlencode($\u POST[“name”]);


同时检查您的php变量,并确保打开警告/错误以显示。您可能返回了一个错误,但没有看到它。

您是否在浏览器控制台中查看了请求/响应?我不知道这是否是错误,但尽量不要对数据字段和变量使用相同的名称。它说:GET 404为什么要检查
 !='
isset
,以及为什么要检查
及其URI编码的等价物?无论如何,jquery应该对其进行编码。试着注释你的
preg_match
并将其替换为false,看看你是否仍然一无所获。我不明白为什么要更改路径,main.php的真正位置是:localhost/examProj/main.phpok我想我找到了问题所在,我认为代码的这一部分并不重要,但这就是为什么要访问后端的原因。我将编辑我的主要帖子供您查看。我访问后端的原因是因为我在php文件中使用的类。