Php 是否可以在不向div加载页面的情况下刷新div?
解决了-有点--- window.location.reload();在我的代码中,我有提交按钮关闭div,工作了Php 是否可以在不向div加载页面的情况下刷新div?,php,jquery,html,refresh,Php,Jquery,Html,Refresh,解决了-有点--- window.location.reload();在我的代码中,我有提交按钮关闭div,工作了 // Collapse Panel on submit $("div#panel").on('submit', function() { window.location.reload(); $("div#panel").slideUp("slow"); $("#toggle a").toggle(); return false; }); 我一直在寻找这个答案,每次我都感到更加沮
// Collapse Panel on submit
$("div#panel").on('submit', function() {
window.location.reload();
$("div#panel").slideUp("slow");
$("#toggle a").toggle();
return false;
});
我一直在寻找这个答案,每次我都感到更加沮丧
情景:
如果我在登录后使用f5刷新整个页面,并下拉div,登录表单将不在那里,因为我的会话现在表明我是一个登录用户,不再是需要登录的来宾。div不仅仅用于登录,它还包含其他链接和快捷方式,因此在您整个访问过程中登录时都会使用它 index.php
<div id="left" class="left">
<?php if(isset($_SESSION['admin'])){
if($_SESSION["admin"] == "1") {
echo "YOU ARE LOGGED IN AS AN ADMIN";
}
}
if(isset($_SESSION['userID'])){
echo "YOU ARE LOGGED IN AS A USER";
}
else { echo '<form class="clearfix" id="loginForm" name="loginForm" action="javascript:void(null)" onsubmit="xajax_login(xajax.getFormValues(\'loginForm\'));">';
即使使用纯JavaScript,这也很容易实现,不需要jQuery 只需创建一个JS函数来重置表单或div中的输入字段,并在每次需要“刷新”div或表单的内容时调用它
如果您粘贴div定义,我们可以给您提供更具体的建议,并附带实际执行此操作的JS代码。好吧,如果您在页面加载时将值加载到表单中,那么当表单通过ajax提交时,它们就会在表单中。您真正需要做的是在div一开始“关闭”时清除表单值
$(#formselector).on('submit',function(){
//your ajax login and page load code
//then:
$('#formselector').find('input').attr('value','');
});
更新
根据您的评论,您真正需要做的是在弹出表单之前检查用户是否真正登录。有一些技巧可以做到这一点,但我建议您在表单提交到的php脚本中,在处理登录之前,检查$\u COOKIE
变量以查看用户是否被识别。这还需要修改您的登录脚本,以确保它将用户数据存储在$\u COOKIE
中,类似于它在&\u会话
变量中存储数据的方式
此时,您的php脚本将根据用户状态提供两种不同的响应,启动表单下拉列表的javascript代码将在显示登录表单之前检查是否得到“用户未找到”响应。要刷新特定div的内容,请使用以下命令: $(“#abc”).load(location.href+“#abc>*”,“”)
其中#abc是div的目标位置。您想让div加载什么?我不明白您在登录后是否会“单击以重新打开div”。div当前有一个登录表单、注册表单,并且将有一个站点的快速搜索表单。。。因此,我希望它可以用于隐藏快速访问的内容,如果我无法获取此信息,那么我会在您登录后将其锁定。div是通过会话加载的,这意味着如果我在登录后重新刷新页面,登录表单将被对登录的人有用的内容替换,但是所有的数据都在主页的if-else语句中,所以如果我是一个用户并且登录了,并且打开面板,它就不会显示登录表单。我只是需要它刷新后,我登录,以便发生。。。我真的不想让它刷新整个页面,但如果必须的话,我会的。好的,你可以使用jquery来填充div,无论是否使用ajax,jquery可以触发的任何事件都会清空表单中的值。我关心的不是值是否仍然存在,而是表单是否仍然存在……如果您想“刷新”页面,这就是它的初始状态,那么表单仍然存在。如果该div中只有表单,而您不想要表单,那么为什么您首先担心重新打开该div?如果我在登录后使用f5刷新整个页面,并下拉该div,则登录表单将不存在,因为我的会话现在声明我是一个已登录的用户,而不再是需要登录的来宾。div不仅仅用于登录,它还包含其他链接和快捷方式,因此在您整个访问过程中登录时都会使用它代码>//从DOM altogeather中删除?啊。这是埃弗里与你所描述的不同的问题,你可能想考虑一下你的问题的简单解释。如果你这样做,我会帮助你。我正在尝试找出哪些代码最能帮助你们,给我一分钟,我看看我能做什么。好的,这是基本的。。。表单位于我的php页面中,js页面制作div幻灯片,表单根据您是否登录而加载,表单调用php函数来检查所有加载和所有这些
$(#formselector).on('submit',function(){
//your ajax login and page load code
//then:
$('#formselector').find('input').attr('value','');
});