Smarty中的自定义函数(二)复选框、下拉列表、单选框
接Smarty中的自定义函数(一)
7、html_checkboxes
复选框
- $ssss1 = array(2,3,4);
- $ssss2 = array('学习','工作','生活');
- $ssss3 = array(2,4);
- $smarty->assign('ssss1',$ssss1);
- $smarty->assign('ssss2',$ssss2);
- $smarty->assign('ssss3',$ssss3);
- $suse = array(
- 0 => '学习',
- 1 => '工作',
- 2 => '生活',
- );
- $smarty->assign('suse',$suse);
- $smarty->display('html_checkboxes.html');
html_checkboxes.html
- <{*
- name,checkbox的name属性
- values,checkbox中的value
- output,checkbox中的显示字符
- selected,已选定的元素
- separator,checkbox之间的分隔符
- labels,是否有<label>标签,默认为true
- *}>
- <{html_checkboxes name=ssss values=$ssss1 output=$ssss2 selected=$ssss3 separator="<br>"}>
- <{*解析后的html代码
- <label><input type="checkbox" name="ssss[]" value="2" checked="checked" />学习</label><br>
- <label><input type="checkbox" name="ssss[]" value="3" />工作</label><br>
- <label><input type="checkbox" name="ssss[]" value="4" checked="checked" />生活</label><br>
- *}>
- <br>
- <{*
- name,checkbox的name属性
- selected,已选定的元素
- options,包含值和显示的数组,可以是关联数组、也可以是数值数组
- 解析后的value=数组的下标,显示的字符为数组下标对应的值
- separator,checkbox之间的分隔符
- labels,是否有<label>标签,默认为true
- *}>
- <{html_checkboxes name=suse options=$suse separtator=" "}>
- <{* 解析后的html代码
- <label><input type="checkbox" name="suse[]" value="0" separtator=" " />学习</label>
- <label><input type="checkbox" name="suse[]" value="1" separtator=" " />工作</label>
- <label><input type="checkbox" name="suse[]" value="2" separtator=" " />生活</label>
- *}>
运行结果:
8、html_image
用于显示图片
- <{*
- file,必选,文件的位置以调用这个模板文件的PHP文件位置为准
- border,图片边框
- height,图片的高度
- width,图片的宽度
- basedir,图片文件的相对路径
- alt,图片的描述信息
- href,图片的链接地址
- *}>
- <{html_image file="./image/1.jpg" border="3" height="90" width="200" alt="搜狗五笔" href="http://www.sougou.com"}>
- <{*
- 解析后的html代码
- <a href="http://www.sougou.com"><img src="./image/1.jpg" alt="搜狗五笔" width="200" height="90" border="3" /></a>
- *}>
运行结果:
9、html_options
下拉列表框
- $ssss1 = array(2,3,4,5);
- $ssss2 = array('学习','工作','生活');
- $ssss3 = array(2);
- $smarty->assign('ssss1',$ssss1);
- $smarty->assign('ssss2',$ssss2);
- $smarty->assign('ssss3',$ssss3);
- $suse = array(
- 5 => '学习',
- 6 => '工作',
- 7 => '生活',
- );
- $smarty->assign('suse',$suse);
- $smarty->display('html_options.html');
html_options.html
- <{*
- values,下拉列表框中option的value值
- output,下拉列表框中option对应显示的字符
- selected,已选定的元素
- name,select的name值,
- 如果没有指定name属性,则只会产生<option>,没有<select></select>标签,
- 即不会显示在页面上,但是是源代码中会有<option>
- 注:
- 如果output的元素比values的元素多,则下拉列表框的option个数以values的元素个数为准
- 如果values的元素比output的元素多,则多余的option有value值,但显示为空
- *}>
- <{html_options values=$ssss1 output=$ssss2 selected=$ssss3 name=ssss}>
- <{*
- 解析后的html代码
- <select name="ssss">
- <option label="学习" value="2" selected="selected">学习</option>
- <option label="工作" value="3">工作</option>
- <option label="生活" value="4">生活</option>
- <option label="" value="5"></option>
- </select>
- *}>
- <{*
- options,包含options的value和对应显示的字符的数组
- *}>
- <{html_options options=$suse name=suse}>
- <{*
- 解析后的html代码
- <select name="suse">
- <option label="学习" value="5">学习</option>
- <option label="工作" value="6">工作</option>
- <option label="生活" value="7">生活</option>
- </select>
- *}>
运行结果:
10、html_radios
单选框
html_radios.php
- $ssss1 = array(2,3,4,5);
- $ssss2 = array('学习','工作','生活');
- $ssss3 = 2;//单选框的checked不能为数组
- $smarty->assign('ssss1',$ssss1);
- $smarty->assign('ssss2',$ssss2);
- $smarty->assign('ssss3',$ssss3);
- $suse = array(
- 5 => '学习',
- 6 => '工作',
- 7 => '生活',
- );
- $smarty->assign('suse',$suse);
- $smarty->display('html_radios.html');
html_radios.html
- <{*
- values,单选框input type="radio"的value值
- output,单选框对应显示的字符
- checked,已选定的元素,不能为数组
- name,input type="radio"的name值,默认为radio
- separator,每个radio的分隔符
- 注:
- 如果output的元素比values的元素多,则单选框的option个数以values的元素个数为准
- 如果values的元素比output的元素多,则多余的radio有value值,但显示为空
- *}>
- <{html_radios values=$ssss1 output=$ssss2 checked=$ssss3 name=ssss separator="<br>"}>
- <{*
- 解析后的html代码
- <label><input type="radio" name="ssss" value="2" checked="checked" />学习</label><br>
- <label><input type="radio" name="ssss" value="3" />工作</label><br>
- <label><input type="radio" name="ssss" value="4" />生活</label><br>
- <label><input type="radio" name="ssss" value="5" /></label><br>
- *}>
- <br>
- <{*
- options,包含radio的value和对应显示的字符的数组
- *}>
- <{html_radios options=$suse name=suse}>
- <{*
- 解析后的html代码
- <label><input type="radio" name="suse" value="5" />学习</label>
- <label><input type="radio" name="suse" value="6" />工作</label>
- <label><input type="radio" name="suse" value="7" />生活</label>
- *}>
运行结果:
总有一天我们信仰的会失效,热爱的会消失,但永远记得,不管无论黑夜多么漫长不堪,黎明始终会如期而至。绝望的时候抬头看,希望的光一直在头上...
其实你始终相信梦想,虽然你常说你不信了;其实你始终相信爱情,虽然你常说等不到了;其实你明知道下句台词是什么,但你一样会被感动;其实你始终爱着这个世界,虽然你常说世界很操蛋...且行且珍惜!