htmx: hx-target: 交换 html 与整页重新加载

2024-02-15

我有一个包含多个表单的页面。

如果用户提交表单,则仅应提交当前表单(而不是页面的其他表单)。

在服务器上,表单得到验证。

情况 1:如果验证失败,则服务器将 html 发送到客户端,并且应交换特定表单,并将新表单添加到 DOM 中。此新表单包含一条错误消息。用户现在可以修复错误并再次提交表单。

情况2:表单验证成功,数据已保存。现在我想在客户端触发全页重定向。

我阅读了 htmx 的文档hx-目标 https://htmx.org/attributes/hx-target/。我设法让 case-1 工作(我喜欢 htmx 的这个功能)。

但是服务器如何触发全页重定向呢?


我找到了这个:

你可以使用HX-重定向 https://htmx.org/docs/#response-headershttp 响应标头触发客户端上的重定向。

我为基于 Django 的应用程序创建此类。这样,片段可以触发整个页面的重新加载:


class HTTPResponseHXRedirect(HttpResponseRedirect):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self['HX-Redirect']=self['Location']
    status_code = 200
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

htmx: hx-target: 交换 html 与整页重新加载 的相关文章

  • Jar 文件名形成 java 代码

    我想从我的 java 代码中确定 jar 文件名 我在谷歌中找到了很多解决方案 但没有任何效果 只是为了看看我在这里尝试了什么 这是一个 stackoverflow 论坛 其中发布了一堆解决方案 堆栈溢出 https stackoverfl
  • UINavigationBar:拦截后退按钮和后退滑动手势

    我有一个 UINavigationBar 可以拦截后退按钮点击 如果有未保存的更改 则会提醒用户 这是基于中提出的解决方案UINavigationController 和 UINavigationBarDelegate ShouldPopI
  • 条目 '' 已添加错误

    我在 ASP net 中有一个 web config 给我配置错误
  • 如何使用 Promise.all 并以对象作为输入

    我一直在开发一个供自己使用的小型 2D 游戏库 但遇到了一些问题 库中有一个名为 loadGame 的特定函数 它将依赖项信息作为输入 资源文件和要执行的脚本列表 这是一个例子 loadGame root source folder for
  • 使用SyncAdapters时登录两次

    我正在使用创建一个新的 Android 应用程序SyncAdapter处理数据库同步 我已准备就绪 应用程序工作正常 但我注意到我登录了两次 首次登录发生在AuthenticatorActivity类 它扩展了AccountAuthenti
  • Android 无法在设备上安装 HelloWorld.apk (null) 错误

    我是安卓新手 当我在 Eclipse 中运行 Android 应用程序时 我在控制台中收到以下消息 2011 03 08 12 57 35 HelloWorld 2011 03 08 12 57 35 HelloWorld Android
  • WIX - 如何使用删除文件

    我们有多个配置文件 根据所选的环境 将复制正确的文件 并删除其余文件 我在用RemoveFile但这不会删除任何内容 或者可能是我没有正确使用它 有人可以举个删除的例子吗 config from INSTALLDIR 在安装过程中 复制所有
  • 避免 p:treeTable 的节点在更新后崩溃

    我有一个p treeTable以一种形式和一种p dialog以另一种形式从哪里p dialog我将数据添加到p treeTable 提交时h commandButton我添加更新的对话框p treeTable为了看到添加的节点 问题是用户
  • 从视频中获取多个缩略图

    我在用着MediaMetadataRetriever检索视频中特定时间的缩略图 这就是我实现这一目标的方法 MediaMetadataRetriever metadataRetriever new MediaMetadataRetrieve
  • 为什么我的所有位图都上采样 200%?

    我的应用程序 1 遇到严重的内存问题 为了调查这一点 我在不同状态下对我的应用程序进行了堆转储 我发现一些位图占用了大量内存 我编写了一个小工具 2 将字节数组解码为 Windows 位图文件 bmp 这样我就可以see位图并将它们与我的文
  • Android Studio 显示警告:此处不允许元素合并

    我基于 LinearLayout 创建自定义视图 类扩展了 LinearLayout 类 在布局中我有
  • 如何获取与 Linux 桌面中的文件关联的图标、MIME 类型和应用程序?

    在 Linux 桌面上使用 C 获取与任意文件 文件路径 关联 的图标 文档描述和应用程序的最佳方法是什么 我想使用最 规范 的方式在 KDE 和 gnome 上查找图标 mime 类型 文件类型描述和相关应用程序 并且我想避免任何 炮击
  • 自动从 Woocommerce 谢谢重定向到传递变量的外部链接

    在 Woocommerce 中 下订单后 我想在 5 秒后自动将客户从感谢页面重定向到外部链接 并传递一些变量作为order id 以及order ammount 那么 如何在 5 秒后自动将客户从 Woocommerce 谢谢重定向到传递

随机推荐

  • 用于 ASP.NET 的自定义 Javascript Ajax

    我已经编写了一些基本的 Javascript 函数 并且想了解如何使用此 JS 代码在 C 4 0 ASP net 项目中启用异步回发 例如 我有一个脚本 单击时会增加数字 再次单击时 数字会减少 我基本上从数据库加载号码 然后隐藏一个 s
  • 如何从另一个类访问共享首选项布尔值

    我创建了一个包含两个按钮的单选组 我可以选择一个并保存它 它工作正常 关闭应用程序后仍然存储 我想做的是使用另一个类中单选按钮的值 这是我的设置类 其中包含共享首选项代码 public class Settings extends Acti
  • C# - 读取字节,它们是什么以及发生了什么。我期望二进制值,而不是十进制数

    我已经成为一名程序员几年了 但我从来没有had了解涉及字节的低级操作 然而它让我感兴趣 并且我想了解更多有关使用字节的信息 在下面的代码中 我正在读取一个仅包含 嗨 那里 一词的文本文件 FileStream fileStream new
  • ASP .net 当前物理位置

    您好 我正在开发 ASP net Web 应用程序 我需要找到网站的当前位置 物理位置 或包含程序集的 bin 目录 我尝试使用 Directory GetCurrentDirectory 并返回 ASP net 临时目录 我真的不喜欢在我
  • 将 JSON 数据发布到 .asmx Web 服务

    我正在尝试将一些简单的参数发布到 asmx Web 服务 我收到以下错误 请求格式无效 application json 字符集 utf 8 我真正需要的是能够传递一个复杂的对象 但我无法通过使用 json 内容类型发出 POST 请求 这
  • UIDocumentInteractionController 日历访问

    我有一个 ics 日历 文件 我用UIDocumentInteractionController using presentOptionsMenuFromRect 运行时 打开方式 菜单看起来像this https i stack imgu
  • twig 扩展中的 Symfony 依赖注入

    好的 我试图创建依赖于其他服务的树枝扩展 安全 上下文 并遇到了一些麻烦 所以 这是我的服务声明 acme twig user extension class Acme BaseBundle Twig UserExtension argum
  • 在 Groovy 类中导入 groovyx.net.http.RESTClient

    我尝试在我的 groovy 类中导入 groovyx net http RESTClient 我的常规课程是这样的 void getREST def r new RESTClient url def response r get path
  • 限制文件下载

    我目前正在为客户创建一个网站 该网站基本上涉及销售各种文件 这显然是一件非常常见的事情 这让我觉得自己很愚蠢 因为我没有想到一种方法来做到这一点 购买完成后 客户应该会被带到包含下载链接的页面 并收到包含下载链接的电子邮件和包含将为他们创建
  • 无法绑定属性

    我已经将Spring Boot从版本1 5 6更新到2 0 0 并且开始出现很多问题 一是题目中给出的问题 我有一个带有属性的类 Data ConfigurationProperties eclipseLink public class E
  • jquery scrollTop animate 完成后滚动触发

    为什么另一个滚动事件被调用after a scrollTop动画激发其complete打回来 单击处理程序 var lock false id click function event var pos if lock return lock
  • Rails 复选框 AJAX 调用,不想渲染任何内容

    我有一个小演示设置 其中单击复选框可通过 AJAX 切换属性 它工作正常 但 Rails 确实想要渲染一些东西 所以我基本上诉诸于在我的视图中创建一个空白的toggle js erb 文件 有问题的控制器操作 def toggle task
  • 为什么“cabal init”会破坏“ghc-mod 检查”?

    ghc mod 在只有一个 haskell 源文件的目录中工作 但如果我在该目录 tmp test 中运行 cabal init 则会收到以下错误 p1 dave peach tmp test ghc ghc mod check Main
  • 如何在没有循环的情况下更改数组内的值 Swift

    我有一个布尔数组 例如 var myBool Bool true true false true false 我想将所有元素从索引 1 更改为索引 3 像这样的东西 myBool 1 3 true true true true true f
  • Slimscroll 栏在移动浏览器中非常慢

    我正在使用 slimscrollbar 插件 它在 Web 浏览器中运行良好 但在移动浏览器中运行速度非常慢 有什么解决方案可以提高移动设备的速度吗 如果您使用过此处的 slimscrollbar 插件 http rocha la jQue
  • OpenJDK 客户端 VM - 无法分配内存

    我正在集群上运行 Hadoop MapReduce 作业 我收到这个错误 OpenJDK 客户端 VM 警告 信息 os commit memory 0x79f20000 104861696 0 失败 错误 无法分配内存 errno 12
  • JS $ 是什么意思?

    我不明白 Javascript 的想法 目的 用途 如 函数 id 返回 document getElementById id 有人可以解释一下或指出我的解释吗 Thanks Pete 当你看到 JavaScript 代码涉及大量 foo
  • 如何在 driver.Close 后从 ChromeDriver 重新打开浏览器?

    我目前已经初始化了 chromedriver 这包含 控制台 和实际的 chrome 浏览器 窗口 我想调用 chromedriver Close 方法仅关闭 浏览器 窗口 然后在应用程序运行时重新打开它 我这样做是因为我的控制台已经处于隐
  • 当我调用WSASend()时,所有数据都会被发送吗?

    使用 IOCP 时 如果我调用WSASend 假设有 2 KB 的数据 当我收到完成通知时 此完成通知是否表明整个 2 KB 已发送 或者可能有一些字节未发送 在正常情况下 是的 只要套接字使用重叠 I O 您的完成就会收到整个 2 KB
  • htmx: hx-target: 交换 html 与整页重新加载

    我有一个包含多个表单的页面 如果用户提交表单 则仅应提交当前表单 而不是页面的其他表单 在服务器上 表单得到验证 情况 1 如果验证失败 则服务器将 html 发送到客户端 并且应交换特定表单 并将新表单添加到 DOM 中 此新表单包含一条