我使用formbuilder.js library并且不确定是否可以将字段数据加载回formbuilder视图以编辑现有表单。我之前没有使用过这个库,所以我不熟悉它能做什么/不能做什么。
我注意到新的Formbuilder
具有.fields
属性。如果我在Formbuilder视图渲染之前将字段加载到那个字段中,那么会加载字段吗?
注意:是否有一个替代(并且更好)的node.js模块或另一个js库可能比这个更好更好地维护?
答案 0 :(得分:0)
我刚刚开始使用Formbuilder,似乎工作得体,虽然我想到了一些“功能”。但到目前为止一切顺利。
至于将表单加载回视口,这大致是显示字段所需的代码。
给这一点,希望这有帮助。
<!-- REQUIRED: jquery ^, lodash, dust-linkedin -->
<script src="/components/formBuilder/js/libs.min.js"></script>
<script src="/components/formBuilder/js/formrunner.min.js"></script>
<link href="/components/formBuilder/css/formbuilder.css" media="screen" rel="stylesheet" />
<script>
// On document ready
$(function(){
// IF you're loaded existing form data, it's up to you
// how you want to load the JSON. In this example,
// we pull it using ajax - all that form builder requires
// is that you inject the JSON when calling `formrunner`
$.getJSON( '/controller/cont.getFormJson.php',
{
userId:'<?= $data['userId'] ?>',
formId:'<?= $data['formId'] ?>'
},
function(resp){
var formRunner = new formrunner({
// Provide a dom element the form will be built to
// jQuery or simpleDOM elements required
targets: $('.formrunner'),
// ACTION FORM WHEN THE USER SUBMITS THE LIVE FORM BACK
action: '',
// we loaded existing JSON, so we have a form_id.
form_id: resp.form_id,
// Pass in the model data
model: resp.model
});
});
});
</script>
<div class="formrunner"></div>