Yii2 Form Builder
A drag and drop form builder with jQuery for Yii2 which built upon to jQuery FormBuilder plugin.
Installation
The preferred way to install this extension is through composer.
Either run
composer.phar require meysampg/yii2-formbuilder "*"
or add
"meysampg/yii2-formbuilder": "*"
to the require section of your composer.json
file.
Usage
Once the extension is installed, simply use it in your code by:
use meysampg\formbuilder\FormBuilder;
and use it as a widget:
<?= FormBuilder::widget(); ?>
Configurations
There are some properties that let you to easily control over form builder.
Property | Type | Description | Default Value |
---|---|---|---|
accessVariableName | string | JavaScript variable name for accessing to formbuilder contents in JS codes | 'formBuilderJsVariable' |
data | array | list of elements for rendering as default elements of form builder | |
dataType | string | indicates that input and output data must be XML or JSON | 'xml' |
elementType | string | HTML tag for form builder constructor | 'div' |
messages | array | list of label strings on a desired language | |
language | string | Desired language for showing form builder (See translation section) | |
options | array | list of plugin options, see FormBuilder Documentations | |
showActionButtons | boolean | indicates that control buttons be showed or not | false |
Examples
<?= FormBuilder::widget([
'data' => [
[
"type" => "header",
"subtype" => "h1",
"label" => "Header",
"class" => "header",
],
[
"type" => "button",
"label" => "Button",
"subtype" => "button",
"class" => "button-input btn btn-warning",
"name" => "button-1475845417456",
"style" => "warning",
],
],
]); ?>
<?= FormBuilder::widget([
'dataType' => 'json'
]); ?>
<?= FormBuilder::widget([
'messages' => [
"autocomplete" => "Autocomplete 23",
],
]); ?>
<?= FormBuilder::widget([
'language' => 'fa-IR',
]); ?>
Translation
Simply copy en.php
file in messages
folder and rename it to your language (e.g. ar
, fr
, ...), translate strings, commit your changes and send a pull request.