首页 » ZenCart » ZenCart分析 » 阅读文章
ZenCart下拉表单输出函数:zen_draw_pull_down_menu 分析
前文在Zen Cart下拉尺码表的修改有提到过,今天给大家详细分析下
zen_draw_pull_down_menu 函数位于 /includes/functions/html_output.php 文件,主要的作用是输出表单的下拉框。
function zen_draw_pull_down_menu($name, $values, $default = '', $parameters = '', $required = false) {
$field = '<select name="' . zen_output_string($name) . '"';
//将$name定义为下拉框名称,zen_output_string()输出安全字符下文介绍
if (zen_not_null($parameters)) $field .= ' ' . $parameters;
//当$parameters不为空时,在$parameters前面加上一个空格
$field .= '>' . "\n";
if (empty($default) && isset($GLOBALS[$name]) && is_string($GLOBALS[$name]) ) $default = stripslashes($GLOBALS[$name]);
for ($i=0, $n=sizeof($values); $i<$n; $i++) {
$field .= ' <option value="' . zen_output_string($values[$i]['id']) . '"';
if ($default == $values[$i]['id']) {
$field .= ' selected="selected"';
}
//循环$values数组,当id键名对应值和$default 相等时,option属性框多上上 selected="selected"
$field .= '>' . zen_output_string($values[$i]['text'], array('"' => '"', '\'' => ''', '<' => '<', '>' => '>')) . '</option>' . "\n";
}
$field .= '</select>' . "\n";
if ($required == true) $field .= TEXT_FIELD_REQUIRED;
return $field;
}
参数介绍
| 参数 | 介绍 |
|---|---|
| $name | 拉框的名字 |
| $values | 下拉框属性和属性名,是个多维数组。$values其中每个子数组必须包含‘id’和‘text’这2个键名和对应的值 |
| $default | 参数指定下拉框默认的值,默认为空,传值的话,$default 的值必须是 $values 这个数组中某个子数组的 ‘id’键名对应的值 |
| $parameter | 参数用于控制 select 的外观,它会附加到 <select name="..." 的后面以及 > 之前 |
| $required | 布尔值,默认false,ture时属性框后面输入一段字符串,在后台中有应用 |
示例
$testName = 'DownMenu';
$testArray = array(array('id'=>'1', 'text'=>'first'),
array('id'=>'2', 'text'=>'second'),
array('id'=>'3', 'text'=>'third'),
array('id'=>'4', 'text'=>'forth')
);
$testDefault = 1;
$testParameters = 'class="SelectClass"';
echo zen_draw_pull_down_menu ($testName, $testArray, $testDefault, $testParameters,true);
输出为
<select class="SelectClass" name="DownMenu"> <option selected="selected" value="1">first</option> <option value="2">second</option> <option value="3">third</option> <option value="4">forth</option> </select> TEXT_FIELD_REQUIRED
ps:前台中没有定义常量TEXT_FIELD_REQUIRED
声明: 本文由Ezencart原创,转载请保留链接:ZenCart下拉表单输出函数:zen_draw_pull_down_menu 分析





评论 共1条 (RSS 2.0) 发表评论
恩,很有用