1

我想id=message-board在动作发生后更新一个特定的 div,一切正常并且执行正确。问题是我想用新结果刷新 div。在我的情况下,div在完成后关闭,我需要刷新我的页面才能拥有我所除外的内容。谢谢你。以下是代码示例。

  remove:function(mid){           
        var l_sParams = 'message_id='+mid;
        var l_sURL = '/ajax/caller/delete_message_board';           
        new Ajax.Updater('message-board',l_sURL,{parameters: l_sParams, method:'POST',
                         onComplete:function(a_oRequest){
                            // maybe here is requested code to refresh the div              
                         }.bind(this)
        });
    }   
4

1 回答 1

2

所以我认为你需要使用Ajax.Request而不是Ajax.Updater. Ajax.Updater 旨在通过 Ajax 调用的响应简单地更新容器的内容。如果您想对 ajax 请求执行更多操作,请像这样使用 Ajax.Request

remove:function(mid){           
    var l_sParams = 'message_id='+mid;
    var l_sURL = '/ajax/caller/delete_message_board';           
    new Ajax.Request(l_sURL,{parameters: l_sParams, method:'POST',
                onComplete:function(a_oRequest){
                     $('message-board').update(a_oRequest.responseText);
                     // Or if the results are JSON
                     $('message-board').update(a_oRequest.responseJSON.message);
                     $('message-board').show(); //if the div is hidden
                     // maybe here is requested code to refresh the div              
                 }.bind(this)
    });
}   
于 2013-10-28T14:28:38.587 回答