我正在开发一个小谜题。用户点击图片的块然后猜猜它是什么图片。我还计算他们在提交之前打开了多少块。我在VBScript / ASP
中使用以下JQuery AJAx代码dataString = 'totalClick=' + totalClick ;
$.ajax({
type: "POST",
url: "puzzle3.asp",
data: dataString,
success: function() {
alert('totalClick' + totalClick + "data: " + dataString );
window.location = "puzzle3.asp";
}
});
我的问题是,我想在'puzzle3.asp'页面上获得'totalClick'变量的值。在我导航到'puzzle3.asp'后,我想在那里使用它来决定其他一些东西。但是一旦我通过AJAX导航到puzzle3.asp,我就失去了POST变量'totalClick'的价值。
有什么方法可以使用POST,导航到下一页并在那里使用变量值。就像设置会话变量一样,但我知道我不能使用JS来分配会话变量。
任何帮助都会受到赞赏。
答案 0 :(得分:0)
:
dataObject,String 要发送到服务器的数据。如果不是字符串,它将转换为查询字符串。它附加到GET请求的URL。请参阅processData选项以防止此自动处理。对象必须是键/值对。如果value是一个数组,jQuery会根据传统设置的值使用相同的键序列化多个值(如下所述)。
您是否尝试过手动将变量放入查询字符串?
$.ajax({
type: "POST",
url: "puzzle3.asp?totalClick=" + totalClick,
data: dataString,
success: function() {
alert('totalClick' + totalClick + "data: " + dataString );
window.location = "puzzle3.asp";
}
});
答案 1 :(得分:0)
尝试通过POST保存变量,加载新页面并使用AJAX检索变量,如:
第A页:
$.ajax({
type: "POST",
url: "puzzle3.asp",
data: dataString,
success: function() {
alert('totalClick' + totalClick + "data: " + dataString );
window.location = "puzzle3.asp";
}
});
Page B(puzzle3.asp):
/**
* No need to wait for load() event, just generate a
* global variable with the number of clicks
*/
(function($){
$.ajax({
type: "GET",
url: "read_clicks.asp",
dataType: "json",
success: function (data) {
// Use any global variable, as needed
$.totalClicks = data.clicks || 0;
}
});
}(jQuery));
答案 2 :(得分:0)
您可以使用JSON.stringify
:
var ssnData="123";
$.ajax({
type: "POST",
contentType: "application/json;charset=utf-8",
data: JSON.stringify({ 'SSNdata': ssnData }),
url: 'home/data',
dataType: 'json',
success: function (cicos) {
//cicos is your response data
}
});