如何在另一个html中调用函数

时间:2014-08-10 23:19:28

标签: javascript jquery html

所以,快速问题 - 我检查是否在html doc上点击了一个复选框,然后当用户点击一个继续按钮时,它会将它们带到下一页,这将根据是否进行复选框已选中。最简单的方法是什么?

在index.html文件(主页)中我有

 if ($("#checkArray").is(":checked")) {
        console.log("permission granted");
      } else {
        console.log("No permissions granted");
     }
window.location='/auth/facebook';

检查复选框是否已标记。然后转到下一个HTML文档(confirmation.html)以获取facebook的授权 在这里,如果选中复选框,我想调用一个函数(true)。

请帮忙!谢谢!

2 个答案:

答案 0 :(得分:2)

您可以使用cookiessessionStorage

SessionStorage示例:

if ($("#checkArray").is(":checked")) {
    window.sessionStorage.setItem('checked', true);
} else {
    window.sessionStorage.setItem('checked', false);
}

window.location='/auth/facebook';

在其他页面上:

var checked = window.sessionStorage.getItem('checked');

SessionStorage适用于现代浏览器,因此如果您需要支持IE8等旧浏览器,则应使用Cookie。您可以在此处详细了解Cookie:http://www.w3schools.com/js/js_cookies.asp

答案 1 :(得分:0)

关注Felix Kling

尝试

index.html

$("input[type='button']").on("click", function(e) {
  var checked = $("input[type='checkbox']").prop("checked");
    if (checked) {
       // do stuff
       // if `_checked` === true
       console.log(checked);        
    } 
    else {
       // do stuff
       // if `_checked` === false
       console.log(checked)
    };
    var conf = window.location.href;
    window.location.href = conf + "?checked=" + checked;
});

confirmation.html

$(window).on("load", function(e) {
    var _checked = (e.target.location.href
                     .split("?").slice(1,2)[0].split("=")[1] === "true" 
                   ? true 
                   : false
                   );
        if(_checked) {
            // do stuff
            // if `_checked` === true
            console.log(_checked);
        } else {
            // do stuff
            // if `_checked` === false
        };
});

jsfiddle http://jsfiddle.net/guest271314/j9t598ab/