如何从先前的帖子中获取参数数据,该信息未在网址

时间:2015-10-16 07:19:42

标签: jquery ajax combobox

在组合框中,我使用Jquery中的AJAX将参数发布到url,并使用以下脚本:

$('#plant').change(function(e2){
$('#location').html('<img src="02_files/01_images/loading.gif">');
    var plant = $(this).val();
    $.ajax({
        type: "POST",
        url: "03_themepage/sfer/otherforms/z161_combobox_action.php",
        data: "plant="+plant,
        success: function(data){
            $('#location').html(data);
        }
    });
});

当我运行脚本时,在从此组合框中选择选项后,在url中,不显示参数“plant”。实际上网址根本没有改变。

同时,我需要第一个组合框中的数据(根据选择),包含在下一个组合框中。

$('#location').change(function(e3){
$('#maingroup').html('<img src="02_files/01_images/loading.gif">');
    var location = $(this).val();
    $.ajax({
        type: "POST",
        url: "03_themepage/sfer/otherforms/z161_combobox_action.php",
        data: "plant="+plant+"&location="+location, //plant data taken from previous url post
        success: function(data){
            $('#maingroup').html(data);
        }
    });
});

最后一个组合框将需要这两个数据。

我的问题是,如何将第一个组合框中的参数数据包含在第二个组合框中,因为它没有显示在网址中?

1 个答案:

答案 0 :(得分:1)

Ajax不会更改URL,但请求在不刷新页面的情况下完成,您可以通过网络选项卡查看。要获取第一个组合框值plant变量,请将工厂变量声明为全局状态,如下所示:

// global declaration, can be accessed inside 2nd handler as well
var plant;

$('#plant').change(function(e2){
 $('#location').html('<img src="02_files/01_images/loading.gif">');
    plant = $(this).val(); // <---- here assign the post value(selected value)
    .....
    .....
});

然后在第二个组合框中,只需像你那样调用这些变量。