【问题标题】:C# .net core: Multiple ajax forms with hidden inputs with same IDC# .net 核心:具有相同 ID 的隐藏输入的多个 ajax 表单
【发布时间】:2020-06-23 08:50:04
【问题描述】:

我有一个带有多个单独选项卡的网页,它们都存在于 DOM 中,它们之间的切换完全是客户端的。每个选项卡都包含一个 ajax 表单,用于编辑所选应用用户的数据。例如。第一个选项卡可让您编辑姓名、姓氏……,第二个选项卡可让您编辑地址。每个选项卡都有一个保存按钮,每次仅将当前选项卡的属性传播到数据库。一切正常:)

但是,当然,每个选项卡都需要相关用户 (user.Id) 的 PK。它通过隐藏字段传递给控制器 <input type="hidden" asp-for="Id" />,所以 HTML DOM 包含多个具有相同 id 的元素并且浏览器会抱怨

我知道我可以手动设置这些输入字段的名称/ID,并在控制器端手动映射它们,但是模型绑定器可以为我做这件事,它很好而且干净。

public async Task<IActionResult> EditGeneralData([Bind(GeneralDataBindFieldNames)]AppUser appUser)

有没有一种简单又好用的方法来实现这一点?我是否应该忘记浏览器警告,因为当/如果使用getElementById 时我会小心?您对此有何看法?

【问题讨论】:

    标签: c# ajax asp.net-mvc dom


    【解决方案1】:

    是的...不是我正在寻找的答案,但应该足够了。事实证明,这些选项卡的内容彼此相关。所以所有的选项卡不能同时存在于 DOM 中,它们之间的切换不能完全是客户端。

    现在,选项卡单击会按需加载选项卡内容,因此 DOM 中不再有多个输入字段。一次只有一个选项卡意味着一次只有一个输入字段:)

    【讨论】:

      猜你喜欢
      • 2014-03-21
      • 1970-01-01
      • 2016-12-06
      • 1970-01-01
      • 1970-01-01
      • 2020-08-18
      • 1970-01-01
      • 2014-11-28
      • 2015-12-28
      相关资源
      最近更新 更多