Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Jquery ajax没有发送数据_Php_Jquery - Fatal编程技术网

Php Jquery ajax没有发送数据

Php Jquery ajax没有发送数据,php,jquery,Php,Jquery,出于某种原因,ajax没有发送数据 在PHP上,我有以下代码: if (isset($_POST['submit'])) { echo "submit"; } else { echo "not submit"; } 我不会屈服。 这是JS代码: $(function () { $('#submit').click(function () { var length = $('#number').val(); var small = $('

出于某种原因,ajax没有发送数据

在PHP上,我有以下代码:

if (isset($_POST['submit'])) { 
    echo "submit";
} else {
    echo "not submit";
}
我不会屈服。 这是JS代码:

$(function () {
    $('#submit').click(function () {
        var length = $('#number').val();
        var small = $('#small').val();
        var big = $('#big').val();
        var number = $('#numero').val();
        var special = $('#special').val();
        var submit = 'submit';
        var url = 'public/php/codegenerator.php';
        var data = "length=" + length + "&small=" + small + "&big=" + big +
                   "&number=" + number + "&special=" + special + "&submit=" + submit;

        $.ajax({
            type: "POST",
            url: url,
            data: data,
            success: function () {
                $('#code').load(url, function () {
                    $(this).fadeIn(1000)
                });
            }
        });
        return false;
    });
});

你可以试试这种方法

$(function(){
    $('#submit').click(function(){
        //YOUR CODE

       var param = {
            length:length,
            small:small,
            big:big,
            number:number,
            special:special,
            submit:submit
        }

         $.ajax({
            type: "POST",
            url: url,
            data: param,   

            //EDITED LINE     
            success: function (data) {
                $('#code').hide().html(data).fadeIn(1000);
            }               
        });       
        return false;
    });               
});
//修改后的答案

//在PHP文件中

if (isset ($_POST['submit'])) { 
    echo json_encode(array('result'=>"submit"));
}
else {
    echo json_encode(array('result'=>"not submit"));
}
//在JQUERY代码中

$.ajax({
    type: "post",
    url: url,
    data: param, 
    dataType:'json';  

    //EDITED LINE     
    success: function (data) {
        // alert(data.result);
        $('#code').hide().html(data.result).fadeIn(1000);
    }               
});

您得到的不是submit,因为它来自.load()调用,而不是.ajax调用——在load调用中,您只加载URL而不传递任何POST数据。那么,为什么要用相同的url在.ajax的成功回调中运行.load呢?

我正在尝试从该页面获取数据(在本例中是echo result submit),正确的代码应该是success:function(data){$('#code').html(data);}它正在复制原始文件(index.php)并且没有从外部PHP文件获取任何数据。为什么要调用同一个url两次。第一个在外部ajax中,第二个在内部ajaxIt中,是复制原始文件(index.php),而不是从外部php文件中获取任何数据。单击submit后,它将复制hole页面。您的php文件似乎返回了包含整个html的数据。所以我在应答中做了一些更改,以使用返回类型JSON。让我知道它回来了。它正在工作。答复已提交。现在我需要使用JSON,但我不太擅长:(。