使用jquery将值传递给另一个页面

时间:2010-10-08 08:48:54

标签: jquery ajax

这是我第一次在这里发帖。我的jquery脚本有问题。我的目标是,我需要将某个链接的值发送到另一个页面,以便其他页面可以使用该值。我认为使用ajax帖子可以完成这项工作,但我无法得到任何结果。这是我的代码:

$(function() {
    var myLink = $('#link');

    $('.class').click(function() {
        var cell1 = $(this).closest('tr').find('td:eq(4)').text();
        var cell2 = $(this).closest('tr').find('td:eq(3)').text();
        var cell3 = $(this).closest('tr').find('td:eq(2)').text();

        var data = 'cell1=' + cell1 + '&cell2=' + cell2 + 'cell3=' + cell3;

    });
});

所以我想知道如何通过使用ajax post单击表格单元格将这些值发送到另一个页面。我想显示它打开到一个新窗口。

我希望你能帮助我,非常感谢你提前。 ;)

2 个答案:

答案 0 :(得分:0)

如果您要发布值,则必须将它们存储在服务器端,直到您到达另一页,另一种方法是这样(假设#link是链接)

$(function() {
    var myLink = $('#link');

    $('.class').click(function() {
        var cell1 = $(this).closest('tr').find('td:eq(4)').text();
        var cell2 = $(this).closest('tr').find('td:eq(3)').text();
        var cell3 = $(this).closest('tr').find('td:eq(2)').text();

        var data = 'cell1=' + cell1 + '&cell2=' + cell2 + 'cell3=' + cell3;
        var baseUrl = "some.page.php" //could be anything
        myLink.attr('href',baseUrl+"?"+data).click();
    });
});

现在,为了在新窗口中打开它,您可以使用旧target="_blank"(在#link解决方案上或查找其他更合适的javascript方式

答案 1 :(得分:0)

必须正确转义网址中的数据。我建议你将它存储在一个对象中,让jQuery处理脏的细节:

// Untested
var tr = $(this).closest('tr');
var data = {
    cell1: tr.find('td:eq(4)').text(),
    cell2: tr.find('td:eq(3)').text(),
    cell3: tr.find('td:eq(2)').text()
};

然后,选择您喜欢的AJAX function并将其与您的对象一起提供。

更新

$('.class').click(function() {
    var tr = $(this).closest('tr');
    var url = 'other-page.html';
    var data = {
        cell1: tr.find('td:eq(4)').text(),
        cell2: tr.find('td:eq(3)').text(),
        cell3: tr.find('td:eq(2)').text()
    };

    $("#load-stuff-here").load(url, data);
});