更新和检索更新的值,而不刷新页面
我有一个配置文件页面,更新用户名,电子邮件,名字和姓氏。我想更新并以相同的形式显示更新后的值而不刷新。更新和检索更新的值,而不刷新页面
我用下面的jQuery代码来更新数据,但我怎么能检索更新值在提交后成功
$(document).ready(function() {
$("#send").submit(function() {
var formData = new FormData($(this)[0]);
$.ajax({
url: 'http://localhost/form/index.php/mail/send',
type: 'POST',
data: formData,
async: false,
success: function(data) {
if (data == 'true') {
alert("success");
} else {
alert("error!");
}
},
error: function(data){
alert("Something went wrong!");
},
});
return false;
});
尝试一些事情是这样的:从一个AJAX网址页面返回
像数组:
$response['errCode'] = 0;
$response['content'] = // your updated content
echo json_encode($response);
在你的js代码
你会得到它像回应:
var data = JSON.parse(response);
if(data['errCode'] == 0)
{
// update content
}
如果您已成功更新数据库,则不必从数据库中检索任何内容。在数据库中成功更新后,您只需将true或false返回到ajax成功点即可。如果它返回true,那么只需使用jquery $("#email").val('[email protected]');
这就是它的用户名,电子邮件,名字和姓氏到文本框!
有.val()
方法
GET $("#txtEmail").val()
SET $("#txtEmail").val("something")
请给
return true;
声明jQuery代码
success: function(data) {
if (data == 'true') {
//place here return true; and remove this alert statement.
}
后
,并在你的HTML部分,添加这样你的HTML元素
<input name="name" id="name" value="<?php echo set_value('name'); ?>" class=" field_style-2" type="text" maxlength="20" required/>
这只是一个example.you可以用自己的ID,名称和值attribute.I改变你的HTML代码,认为这是有帮助。否则请分享yoyur html代码
经过if(data == 'true') {
添加下面两行。
$("#div_id").html('');
$("#div_id").html(data);
现在做三件事情,
1.添加div标签前启动形式。关闭表单标签后关闭该div标签。给出div ID #div_id
2.复制完整的表单代码并粘贴到更新SQL下面。
3.将if(data == 'true')
更改为if(data != '')
。
逻辑: -
使用jQuery将命中更新的URL数据库。然后它会在jQuery文章的响应中加载表单。如果首先使$div_id
为空,则将响应数据加载到该div ID中。如果数据加载成功,然后刷新页面,则会显示更新的值。
注意:我已经在我的项目中使用这个东西。它工作正常。
您正在'formData'中发送新数据var ... if'data'from success == true,然后对您做某事'formData' – Grommy
我很困惑 - 发送数据肯定必须已经存在包含它,所以你想更新什么?你也可以做'FormData(this)',并且***永远不会使用'async:false'。 –
'url:'http:// localhost/form/index.php/mail/send','这是更新配置文件的URL吗? – Avishake