jquery ajax返回整页内容

时间:2012-12-08 08:04:21

标签: php jquery ajax ubuntu

首先,请原谅我的英语不好

我在ubuntu中使用jquery / ajax系统

我的代码如下:

的index.html

...
<script type="text/javascript" src="js/jquery-1.8.3.min.js"></script>
</head>
<body>
<form name="stuSelForm" id="stuSelForm">
<table id="inputTable">
<tr><td colspan="3" align="center">Stu From</td></tr>
<tr>
<td>&nbsp;</td>
<td>St No : </td>
<td><input type="text" name="StNo" id="StNo" /></td>
</tr>
<tr>
<td></td>
<td>name : <br/> family : </td>
<td><input type="text" name="Fname" id="Fname" /><br/><input type="text" name="Lname" id="Lname" /></td>
</tr>
<tr>
<td colspan="3" align="right"><input type="submit" id="send" name="send" value="show" /></td>
</tr>
</table>
</form>
</body>
<script type="text/javascript" src="js/jscodes.js"></script>
...

js file:

$(document).ready(function()
{
$('#stuSelForm').submit(function(event)
{
    var form = $(this);
    inputs = form.find("input");
    serializedData = form.serialize();

    inputs.attr("disabled","disabled");

    $.ajax({
        url:'process.php',
        type:'POST',
        data: serializedData,
        dataType:'text',
        cache: false,
        success : function(data,textStatus,jqXHR){ alert(data); },
        error : function(jqXHR,textStatus,errorThrown) { alert(textStatus+jqXHR.status+jqXHR.responseText+"..."); },
        complete : function(jqXHR,textStatus)
                        {
inputs.removeattr("disabled");
                        }
        });
    event.preventDefault();
});
});

和process.php:

<?php
header("Content-Type: text/html");
$StNo = $_POST['StNo'];
echo $_POST['StNo'];
?>

现在一切正常但返回值不是StNo 它是process.php的全部内容 这是意思     

请帮助我为什么会这样 这是PHP扩展或我或...的错误

tanx for ur help

2 个答案:

答案 0 :(得分:1)

听起来好像php没有运行。您是否正在运行通过localhost / a服务器或直接从目录调用php文件的HTML文件?你需要php服务器来评估你的php脚本。

答案 1 :(得分:0)

标题中的

问题: 你在jquery dataType: text写,但你用php header("Content-Type: text/html");写 改变它以获得成功: 像这样:

$.ajax({
    url:'process.php',
    type:'POST',
    data: serializedData,
    cache: false,
    success : function(data,textStatus,jqXHR){ alert(data); },
    error : function(jqXHR,textStatus,errorThrown) { alert(textStatus+jqXHR.status+jqXHR.responseText+"..."); },
    complete : function(jqXHR,textStatus){inputs.removeattr("disabled");}
    });

我删除dataType:,因为jquery默认设置为dataType:'html' 在这种情况下你不需要写dataType