有没有人知道用于根据模型自动生成表单的javascript库?
即给定一个类似的模型:
{
name: "someone",
email: "someone@somwhere.com",
}
你会得到一个表格:
Name: ___________
Email: __________
马特
答案 0 :(得分:11)
如果您希望使用jQuery生成动态表单,那么我建议您查看Alpaca。
Alpaca是一个开源表单库(在Apache 2下获得许可)。它使用JavaScript生成基于JSON Schema的表单,并且非常灵活,因此您可以注册新的控件类型,布局,约束和验证函数。
我认为它可以很容易地处理你所描述的场景。
它有一些不错的模板功能(jQuery模板),jQuery Mobile的渲染引擎和“连接器”模式,因此您可以从远程数据源读取和保留表单和布局定义。
注意:我是Alpaca背后公司的开发人员之一。我们开源,因为我们认为这对社区来说很好。羊驼是积极开发的,我们将它用于我们的产品(云CMS)。其他人已经将它用于其他CMS系统以及MongoDB和CouchDB等支持的项目。因此,它有很多研究。
答案 1 :(得分:8)
尝试jQuery dForm
示例:
var formdata = {
"action" : "index.html",
"method" : "get",
"elements" :
[
{
"type" : "p",
"html" : "You must login"
},
{
"name" : "username",
"id" : "txt-username",
"caption" : "Username",
"type" : "text",
"placeholder" : "E.g. user@example.com"
},
{
"name" : "password",
"caption" : "Password",
"type" : "password"
},
{
"type" : "submit",
"value" : "Login"
}
]
};
$("#myform").buildForm(formdata);
构建
答案 2 :(得分:1)
尝试下面提到的一个插件
http://code.google.com/p/jquery-form-builder-plugin/
http://www.botsko.net/blog/2009/04/07/jquery-form-builder-plugin/
答案 3 :(得分:1)
inputEx似乎没问题
inputEx是一个开源的javascript框架,用于使用YUI3库为Web应用程序构建字段和表单。
答案 4 :(得分:1)
我最近偶然发现了上面提到的Metawidget,我必须说给我留下了深刻的印象。看起来像是适合的厨具解决方案。
然后,如果您想要小的东西并且具有零依赖性,则可以看看outperform。这是我最近写的一个小型javascript表单生成器库,用于支持自己的项目,因为我对所查看的所有表单生成器要么具有大量依赖关系,要么明显大于单页网络,应用。
答案 5 :(得分:0)
我可以谦卑地建议Metawidget吗?
它从JSON对象创建UI。它不需要JQuery,但支持它。它还支持其他对象格式(例如JSON Schema,REST上的模式等)。