问题标签 [dynamic-forms]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2238 浏览

mongodb - 用于用户设计表单的数据存储 - NoSQL for EAV 的任何优势

我需要在我的软件中允许通过 Web 界面创建用户设计的表单。即,他们创建一个问题、一个类型(文本、单选、复选框等)、选项(如果需要)(单选/检查),然后添加并继续此过程,直到他们在表单中创建了所有字段。

除了查看/填写/打印它们之外,不会对他们进行任何查询,即他们正在添加可以无限次填写的“问卷”(有些可能是 20 次,有些可能是数百万次)。

经过一些研究,似乎 EAV 类型的解决方案听起来不错,除了那里有很多负面看法。许多人建议在这种情况下使用 NoSQL 数据库,但我并没有真正看到它的优点——你仍然有一个包含许多字段的表单,然后是包含许多字段的结果。

某些字段(文本/文本区域/日期)将有一个可能的值,但许多字段也会有多个选项(单选按钮、选择下拉菜单、复选框)。

这是传统 SQL 中的示例设计:

形式:creator_id,名称

form_field: form_id, order, question, type (text, text_area, date, radio, select, check)

form_field_option:form_field_id、名称、值、顺序(用于单选/选择/检查)

form_result:form_id,application_id(不是我使用的名称,但所有结果都属于“应用程序”)

form_field_value:form_result_id、form_field_id、form_field_option_id、值(如果选项字段的值为空白,则文本字段 form_field_option_id 将为空白)

基于此构建表单并获得结果似乎相当容易。它可能会也可能不会完全有效,但是说典型的表格是 5-30 个问题,那会很糟糕吗?

将其放入 NoSQL 数据库(即 Mongo 或类似数据库)中是否有任何优势?如果是这样,你能给我具体的例子来说明它们是什么,并给我一个样本设计吗?我看过很多答案,比如“NoSQL 更适合这个”,但我在这方面没有经验,是因为更快地检索结果,还是什么?使用 NoSQL 会带来什么缺点?

谢谢

0 投票
1 回答
2357 浏览

asp.net-mvc - MVC3-使用 AJAX 将动态表单数据发布回服务器

我正在为我公司的服务开发数据库输入系统。每个服务可以根据需要进行任意数量的操作。同样,每个操作可以根据需要具有任意数量的参数。我正在尝试做的是使用动态表单来更新我的服务/编辑视图中操作参数的数据。

我使用动态表单向服务添加操作,但不是从我的服务视图发布它们,而是从操作/创建发布它们。这应该不是问题,但我想我会指出这一点。

现在,我遇到的问题是将参数表单中的数据发布回服务器。ModelState.isValid 返回错误。当我查看我的模型状态时,我的所有服务数据成员和我的操作数据成员都在那里,但我所有的参数数据成员都丢失了。我使用 FormCollection 检查动态表单的名称,它们实际上遵循 MVC 的模型绑定命名约定 (Parameters[i].DataMembers)。

希望有人可以为我提供一些见解。以下是一些可能有用的代码:

在我的服务控制器中:

在我的服务/编辑视图中,我使用编辑器模板来显示操作的表单。我还在这个表单块之后放置了一个空 div,稍后通过 AJAX.ActionLink 填充参数表单:

然后在我的编辑器模板中,我设置了我的 AJAX.ActionLink:

然后回到我的服务控制器,我有:

ParameterEditorRow 是强类型化到我的操作模型的局部视图(这需要在操作之后进行建模。将 Model.Parameters 传递到编辑器模板中会生成所需的命名约定(Parameters[i].DataMembers)。这很简单:

最后,我有一个用于参数的编辑器模板。我为这篇冗长的帖子道歉,但我已经坚持了几天了。我只是觉得我的方法存在根本性的问题。有什么建议么?

编辑以回应 StriplingWarrior

在我的编辑视图中,我所有的输入字段都在这个表单中:

并发布到:

我使用 IE 网络捕获来查看发回的内容,但它只是在中断时显示待处理,然后锁定。我必须承认,我不经常使用它,所以这可能是我的问题。

模型类(省略了特定于类的成员):

0 投票
1 回答
2387 浏览

jquery - django-dynamic-formset 为每个表单集创建两个添加/删除链接

出于某种原因,我对 django-dynamic-formset 的实现有点滑稽。

它正在为我的模板中的每个动态表单集创建两个添加/删除链接。

我一直在摆弄试图弄清楚这一点,它得到了我最好的。

是我正在谈论的错误的屏幕截图

如果您想自己触发错误,我也可以提供登录名,这是我的模板:

这是forms.py

和观点:

0 投票
1 回答
2130 浏览

jsf - 以编程方式创建 f:selectItems 并将其添加到 HtmlSelectOneRadio

我正在使用 JSF 创建问卷,因此我需要务实地创建我的整个 xhtml,因为有不同类型的问题并且它们的数量没有预定义。

我所拥有的只是 ah:panelGrid 在我看来,其余的都是在我的支持 bean 中生成的。

创建 HtmlOutputText 和 HtmlInputText 没有问题。为此,我使用 getApplication 创建它们,例如:

然后像这样将组件添加到我的网格中:

其中“网格”是我的 panelGrid 元素。所以我把我的问题放在一个循环中,并根据数据库中的问题类型决定要创建什么类型的组件。如果问题是普通文本问题,我可以轻松使用 HtmlInputText。但我也有多项选择题。因此我需要创建 SelectOneRadio 菜单并在其中添加 SelectItems。

我可以HtmlSelectOneRadio使用上面提到的相同 createComponent 方法创建一个。但我无法为其添加选项(selectitem 组件)。有没有办法我可以做到这一点?我们有一个我缺少的 UIComponent 吗?

0 投票
1 回答
1524 浏览

java - 获取动态生成的组件 ID 和值

我有一个问卷表格,其中组件(问题)都是在我的支持 bean 中以编程方式生成的。

在表单提交事件中,我需要收集所有用户输入并将它们存储在数据库中。

但是 JSF 不能识别动态生成的组件,只能找到我的 Facelets 页面中的组件,它们是我的面板网格和提交按钮。这是我的 submit() 方法。

那么除了上述方法之外,有谁知道我可以在哪里寻找我的组件?

0 投票
1 回答
203 浏览

jquery - Jquery 与表单和表格一起使用,包括复制

所以我一直在做这个并且尝试了很多不同的东西,我希望我能得到一些帮助。我有以下要使用的表格。我了解所有后端访问组件等,但我似乎无法让表单运行,包括时间选择器、日期选择器、自动完成和复制。有人可以在我的代码中找到错误吗?我已经把头撞在墙上有一段时间了。复制功能似乎也坏了。有任何想法吗?

谢谢!乔恩

0 投票
2 回答
877 浏览

javascript - Javascript条件动态表单不输入字段

我有以下表格。其目的是查看选择了什么状态并将该值传递给脚本,该脚本将动态添加更多具有自动递增 ID 的下拉框以存储在数据库中。我没有脚本错误,但动态字段不会弹出到位。顺便说一句,这是基于 Rob 在这里的工作,http://www.web-design-talk.co.uk/58/adding-unlimited-form-fields-with-jquery-mysql/#comment-70752。任何人都可以看到我正在做的任何错误。

先感谢您!

经过一些编辑,我想出了以下...

此版本确实会看到 StateID 并随着每个新添加相应地更改下拉框。唯一的问题是,随着 ID 的自动增加(例如 ClassCode_1、ClassCode_2 等),它还增加了输出到页面的字段数。如果能解决这个问题,那就太棒了!

0 投票
1 回答
1086 浏览

jsf - 添加动态表单域时出错

我正在尝试将动态表单字段添加到 jsf 表单。但即使遵循简单的代码也会出错。

测试.xhtml

字段.java

包装实体;

公共类字段{

}

testBean.java

我上面的代码给出了“java.io.NotSerializableException:Entity.Field”错误。

如果我使 Field 类 Serializable 它再次给出错误。

我的简单代码有什么问题?提前致谢

0 投票
3 回答
3970 浏览

delphi - 使用 STRING 动态创建表单

我在设计时创建了 5 个表单。我需要动态创建每个表单的实例并放在一个选项卡上。

我的问题:如果表单名称在一个字符串数组中,我这样调用我的程序:

如何为每个表单定义和创建新实例?

这就是我现在所拥有的:

写着“这是我的问题”的那一行是我需要帮助的地方。我不能以这种方式将 NewForm 作为具有第二种形式的变量重用...

注意:我的问题不是标签。相反,它使用相同的变量名创建表单的新实例。

0 投票
3 回答
1387 浏览

javascript - 使用javascript从动态表单中删除表中的行

我想从使用动态表单创建的表中删除任何行,因此单击“添加”按钮时可以自动增加表的行数。我想从表中删除任何行。行数为1时删除该行,键不出现,但行数多于1时,会出现任意行的删除按钮。我已经制作了 html 和 javascript。

和这个 javascript (jquery)

如何使用动态表单删除表格的任何行?