我的想法是,当我使用jQuery加载页面时,我想提示用户更改密码:
$('a').trigger('click');
我面临的问题是每次加载页面时都会触发事件。
理想情况下,我想在每个登录会话中触发一次事件..这样做的最佳方法是什么?当我触发事件时将值发布到数据库然后检查数据库中的值以查看它是否已被触发?这是我的想法..但我觉得可能有更快更快的方法来做到这一点。
谢谢!
答案 0 :(得分:2)
如果您想使用会话,可以试试这个:
<?php if (!isset($_SESSION['saw_js'])): ?>
<script>
$('a').trigger('click');
</script>
<?php endif; $_SESSION['saw_js'] = true; ?>
基本上,当未设置用户登录$_SESSION['saw_js']
时,将打印您的JS代码。然后,它不再是因为var已经设定了。
答案 1 :(得分:1)
“理想情况下,我想在每个登录会话中触发一次事件。” 那么......使用会话?
if(!array_key_exists('already_changed', $_SESSION)){
//do something
答案 2 :(得分:1)
不优雅,但这只是一个例子。
我不知道你的代码结构是什么。
//variable sett by result from database
<? $ask_new_password = true; ?>
var passwordRequest = <?=$ask_new_password;?>;
if(passwordRequest){
$('a').trigger('click');
}