0

我认为是时候寻求帮助了。七天的阅读 AJAX 教程让我感到沮丧,我比以往任何时候都更加困惑。我的目标是在单击事件后动态更改内容并加载(静态)内容。单击 a 后替换 a 内容的最佳方法(或至少一种方法)是什么?(与形式无关)

4

2 回答 2

0

要替换静态页面中的内容,一种方法是使用 JSON 对象,例如:

1)点击一个HTML按钮,有一个与之关联的onClick事件(javascript)。

2) 在 onClick 事件中,将其设置为执行 xhrPost 调用(在这种情况下,我使用 DOJO 工具包,您可以使用 DOJO、YUI、JQuery 等

function refreshDataGrid(gridDesc, url) {
  dojo.xhrPost({
    url: unescape(url),
    handleAs : "json",
    sync: true,
    load: function (response, args) {
    if (response.success) { 
     dojo.byId('divSearchResultMessages').innerHTML = "";
     dojo.removeClass('divResults','hiddenField');
     dojo.data.ItemFileReadStore({data:response.searchResults}));
    }else {
     dijit.byId('dg'+gridDesc).setStore(null);
     dojo.byId('divSearchResultMessages').innerHTML = "<div style='text-align:center' class='warning'><br><br>" + response.messages+"</div>";
     dojo.addClass('divResults','hiddenField');
   }
    return response;
            },
            error: function (exception, args) { 
                standby.hide();
                handleAjaxError2();
                return response;        
            }
        });     
    }

3)一旦请求发送到服务器端(java)servletController,您可以处理从javascript传递的信息(作为请求参数)并将JSON对象返回给servlet(前端)页面

4)如果一切都正确完成,您应该会看到您的页面获得动态数据而无需刷新整个页面。

有很多 AJAX 教程可以帮助您确定我的帮助。我希望这有帮助。

参考: http ://www.ibm.com/developerworks/library/wa-ground/

于 2013-02-27T16:48:24.517 回答
-1

您可以使用 jquery 在您的内容中已经存在的图层上执行 .toggleVisibility 以及其他操作。

于 2013-02-27T16:32:28.753 回答