Enviar búsqueda
Cargar
Jformino
•
1 recomendación
•
904 vistas
Kang-min Liu
Seguir
jFormino lightning talk for JUI conference Tokyo.
Leer menos
Leer más
Entretenimiento y humor
Empresariales
Vista de diapositivas
Denunciar
Compartir
Vista de diapositivas
Denunciar
Compartir
1 de 48
Descargar ahora
Descargar para leer sin conexión
Recomendados
Test
Test
SamQuiDaiBo
Sis quiz
Sis quiz
Clesio Veloso
Documentacion edderson callpa_ortiz
Documentacion edderson callpa_ortiz
Edderson J. Ortiz
Corrientes pedagoìgicas
Corrientes pedagoìgicas
Hernan Dario Mancipe Luna
Drupal Cms Prezentace
Drupal Cms Prezentace
Tomáš Kafka
Javascript and jQuery for Mobile
Javascript and jQuery for Mobile
Ivano Malavolta
Index2
Index2
grateful7
Miniray.php
Miniray.php
maeeeng69
Recomendados
Test
Test
SamQuiDaiBo
Sis quiz
Sis quiz
Clesio Veloso
Documentacion edderson callpa_ortiz
Documentacion edderson callpa_ortiz
Edderson J. Ortiz
Corrientes pedagoìgicas
Corrientes pedagoìgicas
Hernan Dario Mancipe Luna
Drupal Cms Prezentace
Drupal Cms Prezentace
Tomáš Kafka
Javascript and jQuery for Mobile
Javascript and jQuery for Mobile
Ivano Malavolta
Index2
Index2
grateful7
Miniray.php
Miniray.php
maeeeng69
o̍h Tai-gi
o̍h Tai-gi
Kang-min Liu
The architecture of search engines in Booking.com
The architecture of search engines in Booking.com
Kang-min Liu
Elasticsearch 實戰介紹
Elasticsearch 實戰介紹
Kang-min Liu
Perlbrew
Perlbrew
Kang-min Liu
Same but Different
Same but Different
Kang-min Liu
perlbrew yapcasia 2010
perlbrew yapcasia 2010
Kang-min Liu
Git
Git
Kang-min Liu
Good Evils In Perl (Yapc Asia)
Good Evils In Perl (Yapc Asia)
Kang-min Liu
Learning From Ruby (Yapc Asia)
Learning From Ruby (Yapc Asia)
Kang-min Liu
YAPC::Tiny Introduction
YAPC::Tiny Introduction
Kang-min Liu
Integration Test With Cucumber And Webrat
Integration Test With Cucumber And Webrat
Kang-min Liu
Good Evils In Perl
Good Evils In Perl
Kang-min Liu
Javascript Tutorial
Javascript Tutorial
Kang-min Liu
Javascript Basic
Javascript Basic
Kang-min Liu
Handlino - RandomLife
Handlino - RandomLife
Kang-min Liu
Test Continuous
Test Continuous
Kang-min Liu
網頁程式還可以怎麼設計
網頁程式還可以怎麼設計
Kang-min Liu
OSDC.tw 2008 Lightening Talk
OSDC.tw 2008 Lightening Talk
Kang-min Liu
Happy Designer 20080329
Happy Designer 20080329
Kang-min Liu
Más contenido relacionado
Más de Kang-min Liu
o̍h Tai-gi
o̍h Tai-gi
Kang-min Liu
The architecture of search engines in Booking.com
The architecture of search engines in Booking.com
Kang-min Liu
Elasticsearch 實戰介紹
Elasticsearch 實戰介紹
Kang-min Liu
Perlbrew
Perlbrew
Kang-min Liu
Same but Different
Same but Different
Kang-min Liu
perlbrew yapcasia 2010
perlbrew yapcasia 2010
Kang-min Liu
Git
Git
Kang-min Liu
Good Evils In Perl (Yapc Asia)
Good Evils In Perl (Yapc Asia)
Kang-min Liu
Learning From Ruby (Yapc Asia)
Learning From Ruby (Yapc Asia)
Kang-min Liu
YAPC::Tiny Introduction
YAPC::Tiny Introduction
Kang-min Liu
Integration Test With Cucumber And Webrat
Integration Test With Cucumber And Webrat
Kang-min Liu
Good Evils In Perl
Good Evils In Perl
Kang-min Liu
Javascript Tutorial
Javascript Tutorial
Kang-min Liu
Javascript Basic
Javascript Basic
Kang-min Liu
Handlino - RandomLife
Handlino - RandomLife
Kang-min Liu
Test Continuous
Test Continuous
Kang-min Liu
網頁程式還可以怎麼設計
網頁程式還可以怎麼設計
Kang-min Liu
OSDC.tw 2008 Lightening Talk
OSDC.tw 2008 Lightening Talk
Kang-min Liu
Happy Designer 20080329
Happy Designer 20080329
Kang-min Liu
Más de Kang-min Liu
(19)
o̍h Tai-gi
o̍h Tai-gi
The architecture of search engines in Booking.com
The architecture of search engines in Booking.com
Elasticsearch 實戰介紹
Elasticsearch 實戰介紹
Perlbrew
Perlbrew
Same but Different
Same but Different
perlbrew yapcasia 2010
perlbrew yapcasia 2010
Git
Git
Good Evils In Perl (Yapc Asia)
Good Evils In Perl (Yapc Asia)
Learning From Ruby (Yapc Asia)
Learning From Ruby (Yapc Asia)
YAPC::Tiny Introduction
YAPC::Tiny Introduction
Integration Test With Cucumber And Webrat
Integration Test With Cucumber And Webrat
Good Evils In Perl
Good Evils In Perl
Javascript Tutorial
Javascript Tutorial
Javascript Basic
Javascript Basic
Handlino - RandomLife
Handlino - RandomLife
Test Continuous
Test Continuous
網頁程式還可以怎麼設計
網頁程式還可以怎麼設計
OSDC.tw 2008 Lightening Talk
OSDC.tw 2008 Lightening Talk
Happy Designer 20080329
Happy Designer 20080329
Jformino
1.
jFormino Kang-min Liu gugod@gugod.org
2.
jFormino
3.
jQuery Form by
Handlino
4.
What does it
do
5.
6.
Dynamic Form Generator
7.
Generate <form>
8.
Simple Example $(quot;<div/>quot;) .attr({ id:
quot;form1quot; }) .prependTo(document.body) .formino({ legend: quot;Test Purpose Formquot;, params: [ quot;field_onequot; ] });
9.
Extended Example $(quot;<div/>quot;).attr({ id:
quot;form1quot; }).prependTo(document.body) .formino({ legend: quot;Test Purpose Formquot;, params: [ // only give field name, with auto-generateed label. quot;field_onequot;, // manually assign a label { label: quot;Fooquot;, name: quot;foo_fieldquot; }, // with initial value { label: quot;Barquot;, name: quot;bar_fieldquot;, value: quot;42quot; }, // other types { name: quot;xyzquot;, label: quot;XYZquot;, type: quot;checkboxquot;, values: [ 42, 43, 44 ] } ] });
10.
Google Map $(quot;#form1quot;).formino({
legend: 'GoogleMap demo', params: [ { label: 'Standard Google Map ', name: 'm', type: 'googlemap', value_for_latitude: '25.08532', value_for_longitude: '121.561499', zlevel: 13 }, ], buttons: [ { quot;typequot;: quot;submitquot;, quot;labelquot;: quot;Goquot;, quot;valuequot;: quot;goquot; }, { quot;typequot;: quot;resetquot;, quot;labelquot;: quot;Resetquot; } ] })
11.
Google Map $(quot;#form1quot;).formino({
legend: 'GoogleMap demo', params: [ { label: 'Standard Google Map ', name: 'm', type: 'googlemap', value_for_latitude: '25.08532', value_for_longitude: '121.561499', zlevel: 13 }, ], buttons: [ { quot;typequot;: quot;submitquot;, quot;labelquot;: quot;Goquot;, quot;valuequot;: quot;goquot; }, { quot;typequot;: quot;resetquot;, quot;labelquot;: quot;Resetquot; } ] })
12.
Google Map $(quot;#form1quot;).formino({
legend: 'GoogleMap demo', params: [ { label: 'Standard Google Map ', name: 'm', type: 'googlemap', value_for_latitude: '25.08532', value_for_longitude: '121.561499', zlevel: 13 }, ], buttons: [ { quot;typequot;: quot;submitquot;, quot;labelquot;: quot;Goquot;, quot;valuequot;: quot;goquot; }, { quot;typequot;: quot;resetquot;, quot;labelquot;: quot;Resetquot; } ] })
13.
14.
Form Element
UI Binder
15.
$(quot;input#fooquot;).formino({
act_as: 'datetime-calendar', buttons: [ { type: quot;submitquot;, label: quot;OKquot; }, { type: quot;cancelquot;, label: quot;Nevermindquot; }, { label: quot;Helloquot;, click: function(selected_date) { $(quot;#messagequot;) .text( quot;Hello, you select quot; + selected_date.toString() ); } } ] });
16.
$(quot;input#fooquot;).formino({
act_as: 'datetime-calendar', buttons: [ { type: quot;submitquot;, label: quot;OKquot; }, { type: quot;cancelquot;, label: quot;Nevermindquot; }, { label: quot;Helloquot;, click: function(selected_date) { $(quot;#messagequot;) .text( quot;Hello, you select quot; + selected_date.toString() ); } } ] });
17.
$(quot;input#fooquot;).formino({
act_as: 'datetime-calendar', buttons: [ { type: quot;submitquot;, label: quot;OKquot; }, { type: quot;cancelquot;, label: quot;Nevermindquot; }, { label: quot;Helloquot;, click: function(selected_date) { $(quot;#messagequot;) .text( quot;Hello, you select quot; + selected_date.toString() ); } } ] });
18.
$(quot;input#fooquot;).formino({
act_as: 'datetime-calendar', buttons: [ { type: quot;submitquot;, label: quot;OKquot; }, { type: quot;cancelquot;, label: quot;Nevermindquot; }, { label: quot;Helloquot;, click: function(selected_date) { $(quot;#messagequot;) .text( quot;Hello, you select quot; + selected_date.toString() ); } } ] }); YUI Skin compatible CSS
19.
Why we designed
it
20.
Requirement From Work
21.
Dynamic Form
22.
jQuery(quot;div#for-formquot;) .html(quot;<form><input/>...</formquot;);
23.
Not Elegant
24.
What’s the Problem
?
25.
jQuery(quot;div#for-formquot;) .html(quot;<form><input/>...</formquot;);
26.
Less Readable
27.
Extend
28.
Parameters
29.
Declarative Syntax
30.
Easy to Read
☺
31.
Very Extendable ☺
32.
All Parameters ☺
33.
Input Type
34.
• Primitives •
text, password, select, radio, checkbox • Extended • Date, Time, Date+Time • Google Map • Date Range, Ranged Value
35.
How to use
it
36.
$(quot;#form1quot;).formino({
legend: quot;jquery.form simple demoquot;, params: { quot;Titlequot;: quot;(The Title)quot;, quot;namequot;: { label: quot;Namequot; }, quot;readyquot;: { label: quot;Ready ?quot;, type: quot;radioquot;, values: [ quot;yesquot;, quot;noquot; ] }, quot;xoryorzquot;: { label: quot;X, Y, or Z?quot;, type: quot;radioquot;, values: [ quot;Xquot;, quot;Yquot;, quot;Zquot; ] }, quot;ctoquot;: { label: quot;Check These Outquot;, type: quot;checkboxquot;, values: [ quot;Checkquot;, quot;Thesequot;, quot;Outquot; ] }, quot;favorite_foodquot;: { label: quot;Favorite Foodquot;, type: quot;selectquot;, values: [quot;Hamquot;, quot;Hammerquot;, quot;Hamburgerquot;] } }, buttons: [ { quot;typequot;: quot;submitquot;, quot;labelquot;: quot;Goquot;, quot;valuequot;: quot;goquot; }, { quot;typequot;: quot;resetquot;, quot;labelquot;: quot;Resetquot; } ] }) .submit(function() { $(quot;#messagequot;).html(quot;You just submit that form:<pre>quot; + $(this).serialize() + quot;</pre>quot;); setTimeout(function() { $(quot;#messagequot;).empty(); }, 60000); return false; });
37.
$(quot;#form1quot;).formino({
legend: quot;jquery.form simple demoquot;, params: { quot;Titlequot;: quot;(The Title)quot;, quot;namequot;: { label: quot;Namequot; }, quot;readyquot;: { label: quot;Ready ?quot;, type: quot;radioquot;, values: [ quot;yesquot;, quot;noquot; ] }, quot;xoryorzquot;: { label: quot;X, Y, or Z?quot;, type: quot;radioquot;, values: [ quot;Xquot;, quot;Yquot;, quot;Zquot; ] }, quot;ctoquot;: { label: quot;Check These Outquot;, type: quot;checkboxquot;, values: [ quot;Checkquot;, quot;Thesequot;, quot;Outquot; ] }, quot;favorite_foodquot;: { label: quot;Favorite Foodquot;, type: quot;selectquot;, values: [quot;Hamquot;, quot;Hammerquot;, quot;Hamburgerquot;] } }, buttons: [ { quot;typequot;: quot;submitquot;, quot;labelquot;: quot;Goquot;, quot;valuequot;: quot;goquot; }, { quot;typequot;: quot;resetquot;, quot;labelquot;: quot;Resetquot; } ] }) .submit(function() { $(quot;#messagequot;).html(quot;You just submit that form:<pre>quot; + $(this).serialize() + quot;</pre>quot;); setTimeout(function() { $(quot;#messagequot;).empty(); }, 60000); return false; });
38.
$(quot;#form1quot;).formino({
legend: quot;jquery.form simple demoquot;, params: { quot;Titlequot;: quot;(The Title)quot;, quot;namequot;: { label: quot;Namequot; }, quot;readyquot;: { label: quot;Ready ?quot;, type: quot;radioquot;, values: [ quot;yesquot;, quot;noquot; ] }, quot;xoryorzquot;: { label: quot;X, Y, or Z?quot;, type: quot;radioquot;, values: [ quot;Xquot;, quot;Yquot;, quot;Zquot; ] }, quot;ctoquot;: { label: quot;Check These Outquot;, type: quot;checkboxquot;, values: [ quot;Checkquot;, quot;Thesequot;, quot;Outquot; ] }, quot;favorite_foodquot;: { label: quot;Favorite Foodquot;, type: quot;selectquot;, values: [quot;Hamquot;, quot;Hammerquot;, quot;Hamburgerquot;] } }, buttons: [ { quot;typequot;: quot;submitquot;, quot;labelquot;: quot;Goquot;, quot;valuequot;: quot;goquot; }, { quot;typequot;: quot;resetquot;, quot;labelquot;: quot;Resetquot; } ] }) .submit(function() { $(quot;#messagequot;).html(quot;You just submit that form:<pre>quot; + $(this).serialize() + quot;</pre>quot;); setTimeout(function() { $(quot;#messagequot;).empty(); }, 60000); return false; });
39.
$(quot;#form1quot;).formino({
legend: quot;jquery.form simple demoquot;, params: { quot;Titlequot;: quot;(The Title)quot;, quot;namequot;: { label: quot;Namequot; }, quot;readyquot;: { label: quot;Ready ?quot;, type: quot;radioquot;, values: [ quot;yesquot;, quot;noquot; ] }, quot;xoryorzquot;: { label: quot;X, Y, or Z?quot;, type: quot;radioquot;, values: [ quot;Xquot;, quot;Yquot;, quot;Zquot; ] }, quot;ctoquot;: { label: quot;Check These Outquot;, type: quot;checkboxquot;, values: [ quot;Checkquot;, quot;Thesequot;, quot;Outquot; ] }, quot;favorite_foodquot;: { label: quot;Favorite Foodquot;, type: quot;selectquot;, values: [quot;Hamquot;, quot;Hammerquot;, quot;Hamburgerquot;] } }, buttons: [ { quot;typequot;: quot;submitquot;, quot;labelquot;: quot;Goquot;, quot;valuequot;: quot;goquot; }, { quot;typequot;: quot;resetquot;, quot;labelquot;: quot;Resetquot; } ] }) .submit(function() { $(quot;#messagequot;).html(quot;You just submit that form:<pre>quot; + $(this).serialize() + quot;</pre>quot;); setTimeout(function() { $(quot;#messagequot;).empty(); }, 60000); return false; });
40.
$(quot;#form1quot;).formino({
legend: quot;jquery.form simple demoquot;, params: { quot;Titlequot;: quot;(The Title)quot;, quot;namequot;: { label: quot;Namequot; }, quot;readyquot;: { label: quot;Ready ?quot;, type: quot;radioquot;, values: [ quot;yesquot;, quot;noquot; ] }, quot;xoryorzquot;: { label: quot;X, Y, or Z?quot;, type: quot;radioquot;, values: [ quot;Xquot;, quot;Yquot;, quot;Zquot; ] }, quot;ctoquot;: { label: quot;Check These Outquot;, type: quot;checkboxquot;, values: [ quot;Checkquot;, quot;Thesequot;, quot;Outquot; ] }, quot;favorite_foodquot;: { label: quot;Favorite Foodquot;, type: quot;selectquot;, values: [quot;Hamquot;, quot;Hammerquot;, quot;Hamburgerquot;] } }, buttons: [ { quot;typequot;: quot;submitquot;, quot;labelquot;: quot;Goquot;, quot;valuequot;: quot;goquot; }, { quot;typequot;: quot;resetquot;, quot;labelquot;: quot;Resetquot; } ] }) .submit(function() { $(quot;#messagequot;).html(quot;You just submit that form:<pre>quot; + $(this).serialize() + quot;</pre>quot;); setTimeout(function() { $(quot;#messagequot;).empty(); }, 60000); return false; });
41.
$(quot;#form1quot;).formino({
legend: quot;jquery.form simple demoquot;, params: { quot;Titlequot;: quot;(The Title)quot;, quot;namequot;: { label: quot;Namequot; }, quot;readyquot;: { label: quot;Ready ?quot;, type: quot;radioquot;, values: [ quot;yesquot;, quot;noquot; ] }, quot;xoryorzquot;: { label: quot;X, Y, or Z?quot;, type: quot;radioquot;, values: [ quot;Xquot;, quot;Yquot;, quot;Zquot; ] }, quot;ctoquot;: { label: quot;Check These Outquot;, type: quot;checkboxquot;, values: [ quot;Checkquot;, quot;Thesequot;, quot;Outquot; ] }, quot;favorite_foodquot;: { label: quot;Favorite Foodquot;, type: quot;selectquot;, values: [quot;Hamquot;, quot;Hammerquot;, quot;Hamburgerquot;] } }, buttons: [ { quot;typequot;: quot;submitquot;, quot;labelquot;: quot;Goquot;, quot;valuequot;: quot;goquot; }, { quot;typequot;: quot;resetquot;, quot;labelquot;: quot;Resetquot; } ] }) .submit(function() { $(quot;#messagequot;).html(quot;You just submit that form:<pre>quot; + $(this).serialize() + quot;</pre>quot;); setTimeout(function() { $(quot;#messagequot;).empty(); }, 60000); return false; });
42.
$(quot;#form1quot;).formino({
legend: quot;jquery.form simple demoquot;, params: { quot;Titlequot;: quot;(The Title)quot;, quot;namequot;: { label: quot;Namequot; }, quot;readyquot;: { label: quot;Ready ?quot;, type: quot;radioquot;, values: [ quot;yesquot;, quot;noquot; ] }, quot;xoryorzquot;: { label: quot;X, Y, or Z?quot;, type: quot;radioquot;, values: [ quot;Xquot;, quot;Yquot;, quot;Zquot; ] }, quot;ctoquot;: { label: quot;Check These Outquot;, type: quot;checkboxquot;, values: [ quot;Checkquot;, quot;Thesequot;, quot;Outquot; ] }, quot;favorite_foodquot;: { label: quot;Favorite Foodquot;, type: quot;selectquot;, values: [quot;Hamquot;, quot;Hammerquot;, quot;Hamburgerquot;] } }, buttons: [ { quot;typequot;: quot;submitquot;, quot;labelquot;: quot;Goquot;, quot;valuequot;: quot;goquot; }, { quot;typequot;: quot;resetquot;, quot;labelquot;: quot;Resetquot; } ] }) .submit(function() { $(quot;#messagequot;).html(quot;You just submit that form:<pre>quot; + $(this).serialize() + quot;</pre>quot;); setTimeout(function() { $(quot;#messagequot;).empty(); }, 60000); return false; });
43.
$(quot;#form1quot;).formino({
legend: quot;jquery.form simple demoquot;, params: { quot;Titlequot;: quot;(The Title)quot;, quot;namequot;: { label: quot;Namequot; }, quot;readyquot;: { label: quot;Ready ?quot;, type: quot;radioquot;, values: [ quot;yesquot;, quot;noquot; ] }, quot;xoryorzquot;: { label: quot;X, Y, or Z?quot;, type: quot;radioquot;, values: [ quot;Xquot;, quot;Yquot;, quot;Zquot; ] }, quot;ctoquot;: { label: quot;Check These Outquot;, type: quot;checkboxquot;, values: [ quot;Checkquot;, quot;Thesequot;, quot;Outquot; ] }, quot;favorite_foodquot;: { label: quot;Favorite Foodquot;, type: quot;selectquot;, values: [quot;Hamquot;, quot;Hammerquot;, quot;Hamburgerquot;] } }, buttons: [ { quot;typequot;: quot;submitquot;, quot;labelquot;: quot;Goquot;, quot;valuequot;: quot;goquot; }, { quot;typequot;: quot;resetquot;, quot;labelquot;: quot;Resetquot; } ] }) .submit(function() { $(quot;#messagequot;).html(quot;You just submit that form:<pre>quot; + $(this).serialize() + quot;</pre>quot;); setTimeout(function() { $(quot;#messagequot;).empty(); }, 60000); return false; });
44.
$(quot;#form1quot;).formino({
legend: 'GoogleMap demo', params: [ { type: 'googlemap', label: 'Standard Google Map ', name: 'm', value_for_latitude: '25.08532', value_for_longitude: '121.561499', zlevel: 13 }, ], buttons: [ { quot;typequot;: quot;submitquot;, quot;labelquot;: quot;Goquot;, quot;valuequot;: quot;goquot; }, { quot;typequot;: quot;resetquot;, quot;labelquot;: quot;Resetquot; } ] })
45.
$(quot;#form1quot;).formino({
legend: 'GoogleMap demo', params: [ { type: 'googlemap', label: 'Standard Google Map ', name: 'm', value_for_latitude: '25.08532', value_for_longitude: '121.561499', zlevel: 13 }, ], buttons: [ { quot;typequot;: quot;submitquot;, quot;labelquot;: quot;Goquot;, quot;valuequot;: quot;goquot; }, { quot;typequot;: quot;resetquot;, quot;labelquot;: quot;Resetquot; } ] }) “longitude=121561499;latitude=25.08532”
46.
FYI
47.
•
: jFormino • http://st.handlino.com/hdc/?jFormino • contact: gugod@handlino.com gugod@gugod.org • http://twitter.com/gugod • http://twitter.com/handlino
Descargar ahora