EJS提供了一些辅助函数,下面分别给出demo和讲解
1.date_tag (name, value ,html_options),当value的默认值为new Date(),这里的html_options并没有什么卵用
创建一个年月日的三级联动,第一级联动的id和name为name+'year',第二级为name+'month',第三级为name+'day',value为Date的实例,整个联动为30年,为传入的Date向前数15年,向后数14年。
<%=date_tag('Installation[date]', new Date(1982, 10,20) )%>
2.form_tag (action, html_options),第一个参数action可以不传,html_options可以指定action和multipart两个属性
<%=form_tag('/myaction',{multipart: true})%><%=form_tag_end()%>
3.input_field_tag (name, value ,inputType, html_options),第一个参数是input标签的name.第二个是value,第三个是类型
跟这个方法相似的还有2个方法hidden_field_tag(name, value, html_options)、password_field_tag(name, value, html_options),其实根本上还是input_field_tag
<%=input_field_tag ("test1", "11" ,"text")%>
5.link_to (name, url, html_options),
<%=link_to('hello world', '/something/here')%>
hello world
6.submit_link_to(name, url, html_options)
<%=submit_link_to('holla', '/new/location')%>
7.link_to_if (condition, name, url, html_options, post, block),跟link_to类似,当condition为true时,才生成link
8.ink_to_unless(condition, name, url, html_options, block),如果condition是false的时候才执行
9.link_to_unless_current(name,url, html_options, block),如果url符合is_current_page(url)
10.select_tag (name, value, choices, html_options)
<%=select_tag('mySelectElement', 2, [ {value: 1, text: 'First Choice' }, {value: 2, text: 'Second Choice'}, {value: 3, text: 'Third Choice'} ])%>
主要的就这些,其他的就不说了,不过ejs自身提供的这些方法真心不太喜欢,可以自己去写一些helper,反正平时我是不太喜欢这些方法