Jquery 在ajax调用中使用以前的数据
我有一个页面需要POST数据才能获得ajax响应。依赖POST数据的信息显示良好。然而,在那之后,如果用户想要更新一些显示的数据,我想进行另一个ajax调用来动态更新它。然后问题来了,因为第一个脚本没有从用户请求更新信息的页面获取任何POST数据 现在我有了这个,这显然给我带来了问题Jquery 在ajax调用中使用以前的数据,jquery,Jquery,我有一个页面需要POST数据才能获得ajax响应。依赖POST数据的信息显示良好。然而,在那之后,如果用户想要更新一些显示的数据,我想进行另一个ajax调用来动态更新它。然后问题来了,因为第一个脚本没有从用户请求更新信息的页面获取任何POST数据 现在我有了这个,这显然给我带来了问题 $(document).ready(function(){ var uid = <?php echo $_POST['user_id']; ?>; $.
$(document).ready(function(){
var uid = <?php echo $_POST['user_id']; ?>;
$.ajax({
type: "POST",
data : {user_id:uid},
cache: false,
url:"modules/user/showuserdata.php",
success : function (data) {
$("#response").html(data);
}
})
});
$('#commit-changes').click(function(){
$('#commit-user').submit();
$.ajax({
type: "POST",
data: $("#commit-user").serialize(),
cache: false,
url:"modules/user/updateuser.php",
success : function(data){
$("#response-update").html(data);
}
})
});
$(文档).ready(函数(){
变量uid=;
$.ajax({
类型:“POST”,
数据:{user_id:uid},
cache:false,
url:“modules/user/showuserdata.php”,
成功:功能(数据){
$(“#响应”).html(数据);
}
})
});
$(“#提交更改”)。单击(函数(){
$(“#提交用户”).submit();
$.ajax({
类型:“POST”,
数据:$(“#提交用户”).serialize(),
cache:false,
url:“modules/user/updateuser.php”,
成功:功能(数据){
$(“#响应更新”).html(数据);
}
})
});
chrome输出的javascript错误为
$(document).ready(function(){
var uid = <br />
Uncaught SyntaxError: Unexpected token <
<b>Notice</b>: Undefined index: user_id in <b>C:\xampp\htdocs\inacesso\admin\edituser.php</b> on line <b>73</b><br />
;
$(文档).ready(函数(){
变量uid=
未捕获的语法错误:意外标记<
注意:第73行C:\xampp\htdocs\inacesso\admin\edituser.php中未定义的索引:user\u id
;
为了更好地阅读,我推荐了html,但如果有必要,请通知我
有没有关于如何绕过这个的提示?我不想使用会话变量
很高兴在这件事上我能得到这么多帮助
编辑
showuserdata.php的HTML响应
$user=新用户()
$id=$\u POST['user\u id'];
$rcs_user=$user->getUserByID($id);
$rcs_roles=$user->getRoles();
$role='';
foreach($rcs_角色作为$roles)
{
如果($roles->role\u number==$rcs\u user->permissao)
$role.=''.$roles->role';
其他的
$role.=''.$roles->role';
}
如果($rcs\u user->activo==0)
{
$activo='';
}
其他的
{
$activo='';
}
$response='';
$response.='
实用护墙板
诺梅因塞拉奥修诺姆酒店
';
$response.='
EmailInsira o seu电子邮件
';
$response.='
许可证
“.$role。”
实用动植物
“.$activo”
开/关
林帕尔·福穆拉里奥
';
回音$应答;
尝试以下操作:
var params = [];
<?php if($_POST['user_id']): ?>
params.user_id = <?php echo $_POST['user_id']; ?>
<?php endif; ?>
$.ajax({
type: "POST",
data : params,
cache: false,
url:"modules/user/showuserdata.php",
success : function (data) {
$("#response").html(data);
}
});
var参数=[];
params.user_id=
$.ajax({
类型:“POST”,
数据:params,
cache:false,
url:“modules/user/showuserdata.php”,
成功:功能(数据){
$(“#响应”).html(数据);
}
});
问题在于数据是通过ajax调用加载的
我已经使用jQuery的.live或.on事件解决了这个问题
感谢您的努力!您的
uid
来自PHP,您可以无条件地进行AJAX调用。那么,为什么不在生成uid
的同一PHP文件中生成要显示的用户数据呢?您不必使用会话,只需在每个页面上引用用户ID的值插入一个隐藏元素即可。这看起来像是一个php错误,是由于您没有发送用户id造成的。请确保提交用户表单中有一个名为user\u id
的字段。我已经用该id放置了一个隐藏元素,但错误仍然存在。对我来说,这似乎是一种用户id应该通过URL传递的情况。然后,在更新之后,我如何显示更新是否在用户id上删除了数据?
var params = [];
<?php if($_POST['user_id']): ?>
params.user_id = <?php echo $_POST['user_id']; ?>
<?php endif; ?>
$.ajax({
type: "POST",
data : params,
cache: false,
url:"modules/user/showuserdata.php",
success : function (data) {
$("#response").html(data);
}
});