Ajax 使用 express 和 JQuery 刷新部分视图?

Posted

技术标签:

【中文标题】Ajax 使用 express 和 JQuery 刷新部分视图?【英文标题】:Ajax to refresh a partial view using express and JQuery? 【发布时间】:2011-09-13 02:50:25 【问题描述】:

我想使用 ajax 刷新部分视图。 我知道如何将新数据附加到 html,但我想知道是否有更简单的方法。

我有这样做的部分观点

数据中的每个 x li x.name

我使用 !=partial('test',data:data) 传递数据

我想调用一个函数来再次渲染部分视图而不重新加载页面.. 并且不做 append( ... ); 任何想法?? 或者其他方式...

【问题讨论】:

【参考方案1】:

首先,为部分like添加一个路由

app.get('/mypartial', function (req, res) 
    //compute data here
    res.render('mypartial', layout: false, data: data);
);

然后使用 jQuery .get.ajax 调用 /mypartial 加载新的 HTML。

然后使用jQuery通过做替换父元素的HTML

$('#idofparentelementofyourpartial').html(responseHTML);

另见my answer to this similar question。

【讨论】:

如果您需要在将 JS 函数粘贴到 idofparentelementofyourpartial 之前运行它怎么办?我构建的 ejs 有一个 some content @PeterLyons 请原谅我在此处标记您,但您似乎可以帮助解决我在使用 partials 和 ajax 时遇到的问题,请您看一下 @987654322 @请【参考方案2】:

使用它你可能会得到很好的解决方案

function ajaxRequest(url, succesCallBck, completeCallBck, errorCallBck)<br>

$.ajax(url: url
type: "POST",
dataType: "json",
complete: completeCallBck,
success: succesCallBck,
error: errorCallBck

);

【讨论】:

以上是关于Ajax 使用 express 和 JQuery 刷新部分视图?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Node.JS express 和 AJAX 进行 JQuery 自动完成

带有 Express.js 和 jQuery.ajax 的 CORS

为啥我的 jQuery .ajax() 路由的 .done() 方法没有在我的 NodeJS、Express 和 Mongoose 项目中触发?

nodejs express, ajax 发布 w/jquery 并接收响应

Express.js csrf 令牌与 jQuery Ajax

jQuery的ajax请求express服务器返回数据