jquery - 存储动态表单和使用 json 输入的数据

标签 jquery json forms dynamic

我刚开始使用 JSON.. 我知道这可能已经在这里被问过,但是,我只是想咨询一下我是否在做正确的事情。

我需要为不同的页面创建一个动态表单。我需要能够为每个页面添加动态表单。在管理面板中,我可以在页面模板中添加/编辑/删除字段——更改字段的顺序、名称、类型、值等。

所以,我所做的,我将动态表单字段存储在 json 中,对于每个页面中输入的数据,我也将其存储在 json 中。下面是存储在我的数据库中的示例 JSON 数据:

具有 2 个字段的动态表单的 JSON 结构:

{
"0":{
  "id":"511ddf15cb8ae_1", // generated using uniqid() and counter, to generate a unique id for each field
  "name":"Page Name #1",
  "type":"textfield",
  "validation":"email", 
  "require":"on",
  "value":""  //default value
},
"1":{
  "id":"511ddf15cb8ae_2",
  "name":"Field Name #2",
  "type":"checkbox",
  "validation":"none",
  "require":"on",
  "value":["item 1","item 2","item 3"]  //selection
}
}

存储输入值的 JSON:

{
"511ddf15cb8ae_1":   //the field id, used as key to be able to directly access the data
  "test new data",
"511ddf15cb8ae_2":
  ["item 1","item 2"]
}

我的主要问题是,如果我在数据库中使用 json 存储输入的值可以吗,或者我应该单独存储输入的值 - 数据库表行。

有什么想法可以更好地做到这一点,或者这已经很好了吗?谢谢。

干杯

最佳答案

取决于您接下来的计划:)。

如果您只打算稍后重建表单并填充输入的值(我相信您也存储了动态表单),那么您所采取的方法非常好,从某种意义上说,您不需要使用复杂查询从输入的值重新构造 json。

但是,如果您稍后对相应字段中输入的值进行一些复杂的发现/查询,例如“特定用户在特定字段中输入特定值多少次?”,这将是乏味的。有点儿。如果您打算这样做,那么我建议采用关系方法并将它们存储在表中;动态表单和输入的值。

关于jquery - 存储动态表单和使用 json 输入的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14939973/

相关文章:

javascript - jQuery 删除操作并显示警报

javascript - 按下按钮时制作全高和全宽的菜单栏

java - 在 JSON 对象中解析 JSON 数组

java - GSON 从 JSON 文件到 Java 类的映射

javascript - 为什么这个 AJAX 表单没有提交?

javascript - 是否可以在 1 个数据属性中存储多个键/值?

c# - 如何在所有浏览器中全屏显示网页,没有状态栏和地址栏?

php - 修复图像网址中的双斜杠

php - 无法将 html 表单数据插入 phpmyadmin 数据库

php - 保持一行 4 分钟,如果不采取任何操作,则删除