Php 为什么我在点击提交按钮时什么都没有得到?

Php 为什么我在点击提交按钮时什么都没有得到?,php,jquery,html,json,Php,Jquery,Html,Json,这是html代码 <!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("#butt

这是html代码

    <!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        $("#button").click(function(){
            var senda=$("#ans").val();
            $.ajax({
                type:"POST",
                url:"ajax.php",
                data:{"answer":"senda"},
                dataType:"json",
                success: function()(msg,string,jqXHR){
                    $("#result").html(msg+string+jqXHR);
                }
            });
        });
    });



</script>
</head>
<body>
Hey what has a head and a tail but no body?
<input type="text" id="ans" name="ans" />
<input type="button" id="button" value="submit" />
<p><div id="result"></div>
</body>
</html>

$(文档).ready(函数(){
$(“#按钮”)。单击(函数(){
var senda=$(“#ans”).val();
$.ajax({
类型:“POST”,
url:“ajax.php”,
数据:{“应答”:“senda”},
数据类型:“json”,
成功:函数()(消息,字符串,jqXHR){
$(“#结果”).html(msg+string+jqXHR);
}
});
});
});
什么东西有头和尾巴但没有身体?

这是php文件ajax.php的代码:-

<?php 

$y=$_REQUEST['answer'];
echo "hey $y ";
if($y=='coin'){
    echo "hey it worked";
}

?>

请告诉我哪里出错了。html代码最初运行良好,但当我单击“提交”按钮时,什么也没有发生。我现在可能只是一个非常初级的问题,实际上我只是在学习Jquery和php。我实际上想做的是从用户那里获取一个输入,检查输入是否匹配字符串,然后将用户带到一个新页面。因此,任何帮助都将不胜感激

  • 修复ajax数据:

        var senda=$("#ans").val();
        $.ajax({
            type:"POST",
            url:"ajax.php",
            data:{"answer":senda} // without quotes
        }).done(function(response) {
            $("#result").html(response);
        });
    
  • 使用参数名称处理传递的数据:

    $y = $_POST['answer'];
    echo "hey $y ";
    if ($y == 'coin') {
        echo "hey it worked";
    }
    

  • 代码中有许多语法错误。请查看
    数据:{“答案”:senda},
    。我很惊讶你的浏览器cosole没有出现任何错误,或者你还没有检查?另外,
    =
    需要在ajax中转换为
    icode@Anant这不是他唯一的问题,
    type=“POST”
    url=“ajax.php”,
    success:function()(msg,string,jqXHR){
    这些都是错误的!也没有按照服务器的请求返回json。如果您想要html或文本,请不要请求json。学习一些ajax教程和“文档”请更新您的帖子,并包括您的代码的更正版本。对于成功部分,首先建议使用
    .done()
    相反,但是您当前的代码应该是
    success:function(msg,string,jqXHR){
    您的代码中有一个额外的
    ()
    您忘记了修复
    success
    部分;)而且因为响应只是一个文本,所以
    数据类型不能是
    json
    ,它应该是
    数据类型:“text”,
    dataType:“json”
    表示传递的数据具有json格式,它不与responseNo连接,
    dataType
    表示您将告诉ajax调用期望响应中的数据类型!这是您期望从服务器返回的数据类型。让我们来看看。