【问题标题】:Adding form fields dynamically, then saving them away动态添加表单字段,然后将它们保存起来
【发布时间】:2012-09-25 12:36:01
【问题描述】:

我有一个用于捕获特定任务数据的 asp.net 表单页面,任务项将以表格方式显示。 此任务中可能包含许多项目,我希望为此动态添加适当的表单字段。 然后我需要“保存”表单中的数据。

我想知道解决这个问题的最简单方法是什么。

我曾计划生成一个“起始”行,然后根据需要使用 jQuery 克隆它(同时稍微重命名输入)。 唯一的问题是,根据任务项的类型,表单字段会略有不同。这意味着要从一个非常复杂的“启动器”行开始,并在 js 中包含相当多的代码以及克隆 - 或者我猜想持有每种“类型”的启动器行,隐藏在页面上的某个位置并将它们克隆到生活中根据需要

或者可能为每个使用 append(...html...) 的任务类型提供一个 js 函数

我试图避免使用更新面板 - 我可以在其中生成代码中的所有新字段,但也许这样会更简单?

但除此之外,当我真的想将数据保存起来时,假设获得这一切的唯一方法是使用 Request.Form 集合?

对你们将如何处理这件事很感兴趣,因为我尽量不让自己难过。

谢谢

自然

【问题讨论】:

    标签: c# jquery asp.net ajax forms


    【解决方案1】:

    如果您正在使用 JQuery 构建 UI,为什么不通过由 JQuery $.ajax 命令调用的 Web 服务将最终结果发送回服务器?这样,您就不需要在每次回发后从客户端代码重建 UI,这将是在客户端构建内容但从每个响应回发的问题。

    【讨论】:

    • 不确定我是否会完全使用 jQuery 构建 UI,问题是它需要加载和编辑,因此不一定一击完成。我想我可以从服务中处理所有这些,但我认为至少会使用后面的代码生成该位,因为我可以更轻松地访问所有对象
    【解决方案2】:

    看起来您的表单本质上是非常动态的。在服务器端创建所有这些动态控件可能会变得非常混乱,尤其是因为您必须在服务器端和客户端上都使用它。

    另一种方法是在客户端完成所有与 html 相关的操作,只将数据处理留给服务器,使用 json 作为数据格式。

    我刚开始与angular 合作,给我留下了深刻的印象。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-11
      • 2013-12-02
      • 1970-01-01
      • 1970-01-01
      • 2015-02-14
      • 2013-08-24
      • 2017-10-07
      • 2011-11-08
      相关资源
      最近更新 更多