当我发布该表单时,我有一个带有两个字段的php文件(index.php),在javascript中我正在进行表单数据序列化并通过ajax将其发送到下一个php页面(results.php)。当我尝试在成功内打印数据时,它不会打印。以下代码。
<html>
<head>
<title></title>
<script src="../scripts/jquery-1.9.1.js"></script>
</head>
<body>
<form method="post" name="index" id="indexform">
<table border="1">
<tr>
<td>Name:</td>
<td><input type="text" name="fname"></td>
</tr>
<tr>
<td>Email:</td>
<td><input type="text" name="email"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="sendData"></td>
</tr>
</table>
</form>
</body>
<script type="text/javascript">
$( "#indexform" ).on( "submit", function( event ) {
event.preventDefault();
console.log( $(this).serialize() );
var formdata = $(this).serialize();
// alert(formdata);
$.ajax({
type:"POST",
url:"result.php",
dataType:'json',
data:formdata,
success: function(data){
alert(data);
}
});
});
</script>
在上面我无法打印成功回调中的数据。
答案 0 :(得分:4)
试试这个
<script type="text/javascript">
$( "#indexform" ).on( "submit", function( event ) {
event.preventDefault();
console.log( $(this).serialize() );
var formdata = $(this).serialize();
$.ajax({
type:"POST",
url:"result.php",
data:formdata,
success: function(html){
alert(html);
}
});
});
</script>
在您的result.php页面
中 $name=$_REQUEST['fname'];
$email=$_REQUEST['email'];
echo $name." ".$email;
答案 1 :(得分:2)
您正在将dataType
设置为json
,因此您必须确保只返回有效的json。
这意味着你无论如何都不能echo
或print
;你应该在数组或对象中收集数据,然后只输出一次,如:
echo json_encode($your_data);
答案 2 :(得分:0)
回显results.php页面内的内容。
例如:
echo "two fields $first_field , $second_field successfully inserted. " ;
此内容作为ajax响应生成,并存储在数据变量中。
答案 3 :(得分:0)
Hello My Friends你的html代码在
<script type="text/javascript">
$( "#indexform" ).on( "submit", function( event ) {
event.preventDefault();
console.log( $(this).serialize() );
var formdata = $(this).serialize();
// alert(formdata);
$.ajax({
type:"POST",
url:"result.php",
dataType:'json',
data:formdata,
success: function(data){
alert(data);
}
});
});
</script>
你的result.php文件代码在
<?php
include 'db.php';
$name=$_REQUEST['fname'];
$email=$_REQUEST['email'];
echo $name." ".$email;
?>
现在result.php文件将返回输入的名称和电子邮件地址。