将数据发送到下一页以触发JS中的事件

时间:2016-08-30 16:48:22

标签: javascript jquery

我的菜单上有一个链接,可以将用户发送到一个页面,如果他使用该特定链接,则会触发一个动作(它会向div元素添加一个类)。

现在我正在使用带有以下链接的php:/mypage.php?action=go
并在mypage.php上我用php检查:if(isset($_GET['action']) && $_GET['action'] == go)然后执行php代码

但是我想在JS等价物中这样做,所以不用php我就能触发JQuery动作。我对JS / JQuery不太熟悉,我该怎么做呢?

将触发的脚本JS脚本是

$("#div1").toggleClass("class-triggered");

2 个答案:

答案 0 :(得分:1)

使用sessionStorage在客户端拥有一些有状态的东西:

  • 第一页:sessionStorage.setItem('prop1','value1');

  • 第二页包括:

    var getParamValue=function(param) {
           var v = window.location.search.match(new RegExp('(?:[\?\&]'+param+'=)([^&]+)'));
           return v ? v[1] : null;
       }
    if(sessionStorage.getItem('prop1')==='value1' && getParamValue('action')==='go'){
          //
          $("#div1").toggleClass("class-triggered");
    
     }
    

不要忘记在加载整个页面后运行此代码,特别是:#div1

$(()=>{
    //your code here after load page 
    // Thus, code above should be copy/past here
});

答案 1 :(得分:0)

我认为你这样做的方式是最好的。如果您对cookie或客户端存储执行任何操作,则用户必须在其设置中启用该功能,并且您必须记住之后删除cookie或存储项。