1

是否可以将其传递totalScore var到另一个页面onclick以便在那里显示?例如:点击提交链接到 yourscore.html 并在页面上显示分数

$("#process").click(function() {   
    var totalScore = 0;
    $(".targetKeep").each( function(i, tK) {
       if (typeof($(tK).raty('score')) != "undefined") {
          totalScore += $(tK).raty('score');
       }
    });
    alert("Total Score = "+totalScore);
});
4

3 回答 3

2

让我们假设您的 HTML 可能如下所示:

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>

  <script>
    $(document).ready(function(){

      $("#process").click(function() {   
        var totalScore = 0;
        /*
         Your code to calculate Total Score
         Remove the next line in real code.
        */
        totalScore = 55; //Remove this

    alert("Total Score = "+totalScore);
      $("#submit-link").attr('href',"http://example.com/yourscore.html?totalScore="+totalScore);  
});


    });
  </script>

<meta charset=utf-8 />
<title>JS Bin</title>

</head>
<body>
  <button id="process">Process</button>
<br />
<a href="#" id="submit-link">Submit Total Score</a>

</body>
</html>

看看这个演示

在 yourscore.html 中,您可以通过以下问题了解更多信息,以从 URL 中提取 URL 参数:

用 jquery/javascript 解析 URL?

于 2013-09-17T18:04:40.230 回答
1

这通常是通过更改页面的 url 来完成的。即,如果您要转到新页面,只需执行以下操作:

http://example.com/new/page?param1=test

如果页面已经存在于新窗口中(例如您拥有的弹出窗口),请将 url 设置为新的:

http://example.com/new/page#param

打开一个窗口:

 var win = window.open('http://example.com/new/page?totalscore'+totalscore,'window');

更改位置:

 win.location.href='http://example.com/new/page?totalscore'+totalscore;

其他方法可以是websockets或 cookie 或 HTML5 中的本地存储。

于 2013-09-17T17:03:24.587 回答
-1

如果您的目标是支持更现代的浏览器,那么优雅的解决方案可能是使用 sessionStorage 或 localStorage!它非常简单,可以根据需要清除和设置。低端的最大大小是 2mb,但如果你只存储 INT,那么你应该没问题。

文档:http: //www.html5rocks.com/en/features/storage http://dev.w3.org/html5/webstorage/

演示: http ://html5demos.com/storage

例子:

addEvent(document.querySelector('#local'), 'keyup', function () {
  localStorage.setItem('value', this.value);
  localStorage.setItem('timestamp', (new Date()).getTime());
  //GO TO YOUR NEXT PAGEHERE
});
于 2013-09-17T17:07:41.547 回答