npm.io
0.0.3 • Published 10 years ago

express-simple-form

Licence
ISC
Version
0.0.3
Deps
1
Vulns
0
Weekly
0

express-simple-form

Form Builder

Initialize

var express     = require('express');
var multipart 	= require('connect-multiparty');
var simpleForm  = require('express-simple-form');

var app = express();

app.set('views', './views');
app.set('view engine', 'jade');
app.use(multipart());
app.use(simpleForm());
app.get('/', function (req, res) {
	res.render('index');
});

app.listen({port: 4000});

Use in template

html
  head
    title exp
  body
    div
      != form.open().post().multipart().action('/user/create')
      != form.text().name('name').default('root').attrs({'data-value': 'value'})
      != form.select().name('countries').options({'RU':'Russia', 'UK': 'United Kingdom'})
      != form.textarea().name('describe')
      != form.checkbox().name('assign')
      != form.radio().name('sex').value('male')
      != form.radio().name('sex').value('female')
      != form.submit()
      != form.close()
Form:open
form.open().post().multipart().action('/some/url') //<form method="POST" enctype="multipart/form-data" action="/some/url">
Form:text
form.text().name('name').default('root').attrs({'some-attribute': 'some-value'}) //<input type="text" name="name" value="root" some-attribute="some-value">
Custom input
form.input().type('some-type') //<input type="some-type">
hash attributes

form.text({name: 'user', value: 'root'}) // <input type="text" name="user" value="root">

Keywords