使用 jquery 发布 php 表单
Posted
技术标签:
【中文标题】使用 jquery 发布 php 表单【英文标题】:POST php form using jquery 【发布时间】:2011-08-25 20:01:45 【问题描述】:我需要任何 jQuery 代码来发送表单数据而不刷新页面。
方法(POST):提交表单后显示“正在加载...”消息或“正在加载图像”。如果 process.php = 1 (true) 隐藏表单并显示 ok 消息,如果 process.php = 2 ( false ) 不隐藏表单并显示任何错误消息。
【问题讨论】:
【参考方案1】:var data = new Object();
data['formData'] = $('#form').serializeArray();
$.ajax(
type: 'post',
url: 'process.php',
dataType: 'json',
success: function(response)
if (response.result == 1)
$('#form').hide();
else
alert('error');
);
process.php:
//...
echo json_encode(array('result' => 0)); // OR 1
【讨论】:
很好,没有 json 数据类型方法?这不显示 ajax 加载消息。 @persipam,我不明白你的评论)你能解释一下吗? 在您的代码中提交后不显示任何加载消息或加载图像。 2- 用于错误 jquery 显示警告框。请看我的问题。谢谢【参考方案2】:您需要添加表单 ID 或任何其他标识符。
所以,如果你的表格是
<div id="message"> </div>
<form method="post" action="" id="myForm">
<input type="submit" name="send" id="sendData" />
</form>
jQuery:
$(document).ready(function()
$("#sendData").click(function()
$("#message").html("loading ...");
$.post("process.php",
submit: 1 //and any other POST data you separate with comma
, function(response)
if(response == 1)
$("#myForm").hide();
$("#message").html("OK");
else
$("#message").html("error message");
);
);
);
现在,提交表单后,您将在发布“process.php”时收到消息“正在加载...”,然后如果 process.php 返回 1,表单将被隐藏并显示 OK,否则您会收到错误消息。
【讨论】:
不错。我对此进行了测试。谢谢卡罗96。这适用于 jquery 1.4.4 ? 是的,可能,但使用最新版本的 jQuery(推荐,不适用于 $.post)。 如果我在表单中有带有id=email
的文本并且我想发送到process.php
,在process.php
中,我如何检索数据并将其存储在数据库和jQuery 代码中。 ..我们如何发送line 5
以上是关于使用 jquery 发布 php 表单的主要内容,如果未能解决你的问题,请参考以下文章
我无法使用 PHP 和 jQuery 将表单数据更新到 MySQL
使用 jQuery 提交表单并使用 PHP 发送.. 不知道为啥它不发送