Node.js使用和不使用ajax进行更新

时间:2016-04-24 10:48:01

标签: javascript ajax node.js forms

什么是最好的"处理必须在没有启用JavaScript的情况下工作的表单的方法?

为每个路线创建不同的路线会更好,例如

AJAX请求:路由"API/contact"return res.send("message")

没有JavaScript:路由"联系"并返回带有查询参数的重定向"消息"

或者在一个路线中检测xhr并根据此情况进行渲染?

或者是否有更好的方法可以解决在未启用JavaScript以向用户提供有关提交的反馈时将用户带到res.send("")的问题?

澄清: 我有一个网站正在处理其表单的AJAX请求,以避免整页加载。当JavaScript未启用时,它缺少回退,因此当用户单击表单上的提交时,他会使用res.send从帖子中接收数据并替换整个页面,而不是仅更新所需的效果带有"成功/失败的标签"信息。那么问题仍然如上所述,这将是解决这个问题的巧妙方法吗?

2 个答案:

答案 0 :(得分:0)

可能最好的做法是检查X-Requested-With标头并检查它是否包含XMLHttpRequest(但由于新的fetch API将慢慢进入浏览器,因此可能会弃用

根据该值,您可能希望返回JSON有效负载,或最终触发服务器端呈现,从而返回准备使用的HTML页面。

作为替代方案,您可以返回具有特定查询字符串值的重定向响应;加载页面后,您将检查该值(例如,使用qsdeparam中的jquery并相应地操作客户端。

答案 1 :(得分:-1)

您的服务器路由与客户端javascript无关。您不需要javascript来接收" res.send"消息。