Smarty 图标

您可根据商标声明使用 Smarty 徽标。

Smarty Template Engine Smarty Template Engine

如欲了解赞助、广告、新闻或其他查询,请联系

使用 Smarty 的网站

广告

{html_checkboxes}

{html_checkboxes} 为一个 自定义函数,使用提供的数据创建 html 复选框组。它还会负责处理默认选择的项。

属性名称 类型 是否必需 默认值 描述
name 字符串 checkbox 复选框列表的名称
values 数组 是,除非您使用 options 属性 不适用 用于复选框按钮的一组值
output 数组 是,除非您使用 options 属性 不适用 用于复选框按钮的一组输出
selected 字符串/数组 选中的复选框元素
options 关联数组 是,除非使用 values 和 output 不适用 一个关联数组,包含值和输出
separator 字符串 用来分隔每个复选框项的文本字符串
assign 字符串 将复选框标记分配给数组,而不是输出
labels 布尔值 TRUE 在输出中添加 <label> 标签
label_ids 布尔值 FALSE 在输出中的 <label> 和 <input> 中添加 id 属性
escape 布尔值 TRUE 转义输出/内容(值始终被转义)
strict 布尔值 FALSE 如果使用布尔 TRUE 或字符串 "disabled""readonly" 分别提供,将使 "extra" 属性 disabledreadonly 只能被设置
  • 必需属性为 valuesoutput,除非您使用 options 代替它们。

  • 所有输出都符合 XHTML 要求。

  • 所有不在以上列表中的参数都作为名/值对打印在创建的每个 <input> 标签中。

实例 8.6 {html_checkboxes}

<?php

$smarty->assign('cust_ids', array(1000,1001,1002,1003));
$smarty->assign('cust_names', array(
                                'Joe Schmoe',
                                'Jack Smith',
                                'Jane Johnson',
                                'Charlie Brown')
                              );
$smarty->assign('customer_id', 1001);

?>

  

其中模板是

{html_checkboxes name='id' values=$cust_ids output=$cust_names
   selected=$customer_id  separator='<br />'}

  

或其中 PHP 代码是

<?php

$smarty->assign('cust_checkboxes', array(
                                     1000 => 'Joe Schmoe',
                                     1001 => 'Jack Smith',
                                     1002 => 'Jane Johnson',
                                     1003 => 'Charlie Brown')
                                   );
$smarty->assign('customer_id', 1001);

?>

  

并且模板是

{html_checkboxes name='id' options=$cust_checkboxes
   selected=$customer_id separator='<br />'}

  

这两个示例的两种输出

<label><input type="checkbox" name="id[]" value="1000" />Joe Schmoe</label><br />
<label><input type="checkbox" name="id[]" value="1001" checked="checked" />Jack Smith</label>
<br />
<label><input type="checkbox" name="id[]" value="1002" />Jane Johnson</label><br />
<label><input type="checkbox" name="id[]" value="1003" />Charlie Brown</label><br />

  

示例 8.7 数据库示例(如 PEAR 或 ADODB)

<?php

$sql = 'select type_id, types from contact_types order by type';
$smarty->assign('contact_types',$db->getAssoc($sql));

$sql = 'select contact_id, contact_type_id, contact '
       .'from contacts where contact_id=12';
$smarty->assign('contact',$db->getRow($sql));

?>

  

以上数据库查询结果将通过输出。

{html_checkboxes name='contact_type_id' options=$contact_types
        selected=$contact.contact_type_id separator='<br />'}


另请参见 {html_radios}{html_options}