AJAX和$ _POST字段未通过

时间:2015-11-01 16:37:13

标签: php jquery ajax post

您好,你们可以快速提示我在这里做错了什么。

我想通过ajax将$ _POST ['url']传递给php文件。

AJAX:

<script>
$('#checkUrl').click(function() {
    $('#loader').css("display","block");
    $('#form').submit(function (e) {
        e.preventDefault();
        $.ajax({
            url: 'example.php',
            data: {url:'<?php echo $_POST['url']; ?>'},
            type: 'POST',
            success: function(data) {
                $('#loader').css("display","none");
                $('#reponse').replaceWith(data);
            }
        });
    });
});
</script>

表格

<form id="form" method="post">
    <input type="search" size="35" id="url" name="url" placeholder="www.myblogurl.com" class="btn btn-mod btn-gray btn-medium btn-round" />
    <span class="hidden-xs">&nbsp;</span>
    <input type="submit" value="Submit" id="checkUrl" class="btn btn-mod btn-medium btn-round mb-xs-10">                                  
</form>

我知道我正在调用php文件,因为我可以从中var_dump随机文本。但是var_dump($ _ POST);是空的。

array(1) { ["url"]=> string(0) "" }

2 个答案:

答案 0 :(得分:1)

你的代码应该是

<script>
//$('#checkUrl').click(function() { // no need to use click event here  enough to use submit for form
    $('#form').submit(function (e) {
        $('#loader').css("display","block");
        e.preventDefault();
        $.ajax({
            url: 'example.php',
            data: {url:$(this).find('#url').val()}, // while ID must be unique  you can use $('#url').val(); directly
            type: 'POST',
            success: function(data) {
                $('#loader').css("display","none");
                $('#reponse').replaceWith(data);
            }
        });
    });
//});
</script>

并在php中

<?php
   echo $_POST['url'];
 ?>

答案 1 :(得分:0)

试试这个

data: {url:$('#url').val()},

而不是回显php变量,你可以使用jQuery获取url。