动态表单创建和添加输入字段

时间:2020-02-29 17:53:41

标签: javascript c# asp.net ajax forms

我目前正在从事一个在线测验创建系统的项目,该系统应该具有供用户创建自己的测验,问题和可能的答案,然后将其发送给其他用户的功​​能,以便他们可以解决测验。我正在使用c#作为后端。我面临的问题是在测验中动态创建问题和可能的答案。我不知道如何创建动态表单,以便用户可以创建问题并添加可能的答案。我希望用户能够创建这样的问题:

问题1:谁是美国第一任总统?

a)约翰·亚当斯

b)托马斯·杰斐逊

c)乔治·华盛顿

添加答案

创建另一个问题

如果用户决定添加另一个可能的答案,则按“添加答案”。 当他按下“创建另一个问题”时,应该创建一个空表格来键入他的问题并添加可能的答案。

问题1:谁是美国第一任总统?

a)约翰·亚当斯

b)托马斯·杰斐逊

c)乔治·华盛顿

d)一些总裁

添加答案

创建另一个问题

有人做过类似的事情吗?我已经搜索了一段时间,但找不到我需要的东西。 我不是在寻求完整的代码解决方案,而只是寻求一些帮助,所以我可以继续我的项目。

非常感谢您抽出宝贵的时间。

1 个答案:

答案 0 :(得分:0)

如果您可以指定是否使用Angular之类的js框架,那么将更易于提供示例,但由于并非如此,我在vanilla js中做了相同的功能,这将有所帮助具有添加动态字段功能。

function addAnswerFields(){

   //Get reference of container and append Text in it
   var container = document.getElementById("container");
   container.appendChild(document.createTextNode("Answer "));

   //Get reference of container and append Input field in it
   var input = document.createElement("input");
   input.type = "text";
   container.appendChild(input);

   // Add Br tag to move input fields on next line
   container.appendChild(document.createElement("br"));
}

当用户单击创建另一个问题时,将弹出一个字段供他键入答案。此外,建议您可以在该字段的右侧添加一个按钮。单击按钮后,该字段将被P标签或您用来将其显示为答案的任何其他标签替换。希望这会有所帮助!