【问题标题】:Ajax refreshing pageAjax 刷新页面
【发布时间】:2014-03-24 11:52:40
【问题描述】:

在更改下拉列表时,我正在读取下拉值并进行 ajax 调用以获取数据。我想刷新同一页面。 我试过这个

$('#status').change(function(){

    var status = $('#status').val();
    $.ajax({
        url : "Partners.action",
        data: {status : status},
        success : function(data) {
            alert(status);
            $("#status").html(data);

        }
    });
});

但它并不令人耳目一新

【问题讨论】:

  • 刷新是什么意思?完整的页面刷新?
  • 你需要刷新什么?如我所见,您正在使用响应更新状态输入。
  • $('#status')为什么要在成功函数中更新它的html。
  • 刷新页面有点违背 AJAX 的目的

标签: jquery ajax


【解决方案1】:

解决方案 1:

您可以使用@Neel 提出的方法进行页面刷新。 但是如果你想刷新整个页面并取回数据,你首先需要将它存储在某个数据库中。

此外,您正在将数据填充到您正在观察.change 事件的同一控件中。

$("#status").html(data); 替换为$('#YourHTMLControl').html(data);

替代方法: 另一种方法是使用查询字符串。 你可以这样做。

success : function(data) {
    alert(status);
    $("#status").html(data);
    window.location="currentPageURL.aspx?data="+data;
}

稍后您可以在页面加载时读取查询字符串,并使用 javascript 或任何服务器端方法将其插入所需的控件。

希望对你有帮助。

【讨论】:

    【解决方案2】:
    $('#status').change(function(){
    
        var status = $('#status').val();
        $.ajax({
            url : "Partners.action",
            data: {status : status},
            success : function(data) {
                alert(status);
                $("#status").html(data);
               window.location="currentPageURL.aspx?data="+data; /// for refreshing the page
    
            }
        });
    });
    

    【讨论】:

    • 我想用我从 ajax 调用获得的数据刷新整个页面,以及我要返回相同 jsp 的操作
    猜你喜欢
    • 1970-01-01
    • 2013-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-18
    相关资源
    最近更新 更多