什么是最好的"处理必须在没有启用JavaScript的情况下工作的表单的方法?
为每个路线创建不同的路线会更好,例如
AJAX请求:路由"API/contact"
和return res.send("message")
没有JavaScript:路由"联系"并返回带有查询参数的重定向"消息"
或者在一个路线中检测xhr
并根据此情况进行渲染?
或者是否有更好的方法可以解决在未启用JavaScript以向用户提供有关提交的反馈时将用户带到res.send("")
的问题?
澄清: 我有一个网站正在处理其表单的AJAX请求,以避免整页加载。当JavaScript未启用时,它缺少回退,因此当用户单击表单上的提交时,他会使用res.send从帖子中接收数据并替换整个页面,而不是仅更新所需的效果带有"成功/失败的标签"信息。那么问题仍然如上所述,这将是解决这个问题的巧妙方法吗?
答案 0 :(得分:0)
可能最好的做法是检查X-Requested-With
标头并检查它是否包含XMLHttpRequest
(但由于新的fetch
API将慢慢进入浏览器,因此可能会弃用
根据该值,您可能希望返回JSON
有效负载,或最终触发服务器端呈现,从而返回准备使用的HTML页面。
作为替代方案,您可以返回具有特定查询字符串值的重定向响应;加载页面后,您将检查该值(例如,使用qs
或deparam
中的jquery
并相应地操作客户端。
答案 1 :(得分:-1)
您的服务器路由与客户端javascript无关。您不需要javascript来接收" res.send"消息。