.ajax()不将数据发送到php文件

时间:2014-11-19 20:29:58

标签: php jquery

我遇到的问题是通过jquery

检索通过.ajax()发送到php文件的数据

以下是我的HTML:     

<!-- Jquery tute no 94 onwards -->

<html lang="en">

<head>

<meta charse="utf-8">
<title> jquery4 </title>
<link rel="stylesheet" type="text/css" href="jquery4.css"/> 

</head>

<body>

<input id="lo" type="text"> </input>
<input id="ton" type="button" value="Load"> </input>
<div id="content"> </div>

<script type="text/javascript" src="jquery.js"> </script>
<script type="text/javascript" src="jquery4.js"> </script>

</body>

</html>

我的jquery4.js是:

$(document).ready(function()
{
$('#ton').click(function()
{ 
    var nm= $('#lo').val();
    $.ajax({url: 'page.php', data1: 'name='+nm, success: function(data2)
    {
        $('#content').html(data2);
    }
    });
});
}); 

我的page.php是:

<?php
if(isset($_GET['data1']))
{
    echo $namer= $_GET['data1'];
}
?>

以上所有文件都在同一个文件夹中,我安装了xampp。 我猜错误是在我调用的jquery文件中的某个地方 ajax()函数

3 个答案:

答案 0 :(得分:4)

jQuery ajax没有采用data1参数。它需要一个data参数,该参数应该是名称 - 值对的对象

    $.ajax({
        url: 'page.php',
        data: {
            data1: 'name=' + nm,
        },
        success: function(data2) {
            $('#content').html(data2);
        }
    });

答案 1 :(得分:0)

$.ajax({
type: "GET",
url: "page.php",
data: {
            data1: 'name=' + nm,
        }
,
        success: function(data2) {
            $('#content').html(data2);
        }

});

答案 2 :(得分:0)

试试这个:

$(document).ready(function() {
    $('#ton').click(function() { 
        var nm= $('#lo').val();
        $.ajax({
            url: 'page.php?name=' +nm, 
            success: function(data2) {
                $('#content').html(data2);
            }
        });
    });
}); 

你不必告诉jQuery使用GET,因为默认情况下,如果没有指定其他内容。 所以ajax函数不接受名为data1的参数,但是数据&#39;这主要用于其他方法,如POST,PUT和DELETE。

我更喜欢使用普通查询字符串发送GET请求,如上例所示。

然后,您可以使用$_GET['name']

检查使用PHP获取GET参数