是否可以将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);
});
答案 0 :(得分: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>
查看此DEMO
在yourscore.html中,您可以在以下排队中了解更多信息,以便从网址中提取网址参数:
答案 1 :(得分:1)
这通常是通过更改页面的URL来完成的。即如果你要去一个新的页面,只需:
http://example.com/new/page?param1=test
如果页面已存在于新窗口中(如您拥有的弹出窗口),请将该网址设置为新的:
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或HTML5中的cookies或localstorage。
答案 2 :(得分:-1)
如果您的目标是支持更现代的浏览器,优雅的解决方案可能是使用sessionStorage或localStorage!它非常简单,可以根据需要清除和设置。低端的最大大小是2mb,但如果你只存储INT,那么你应该没问题。
DOCS: 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
});