Ecshop模板中html_options用法详解
程序部分
<?php
$smarty->assign('status_list', $_LANG['cs']); // 订单状态
$smarty->display("index.dwt");
?>
模板部分
<select name="status" id="status">
{html_options options=$status_list}
</select>
可见smarty的html_options接受的其实是一个数组,并且这个数组的键值将是option的value值,而数组的值则将是option的显示值 ,如果要让某个选项初始化为选择状态,
那么,要在模板中指定这个选项的selected=$status_id
程序部分
$smarty->assign('status_id', -1);
$smarty->assign('status_list', $_LANG['cs']); // 订单状态
$smarty->display("index.dwt");
模板部分
<select name=customer_id>
{html_options options=$status_list selected=$status_id}
</select>
显示如下:
<select id="status" name="status">
<option value="-1" selected="">请选择...</option>
<option value="0">待确认</option>
<option value="100">待付款</option>
<option value="101">待发货</option>
<option value="102">已完成</option>
<option value="1">付款中</option>
<option value="2">取消</option>
<option value="3">无效</option>
<option value="4">退货</option>
</select>
html_options还有一种用法,option的value和显示是分开的,这样方便处理其他的一些情况
具体用法如下
index.php:
$smarty->assign('cust_ids ', array(100,200,300,400));
$smarty->assign('cust_names ', array('Joe Schmoe','Jack Smith','Jane Johnson','Carlie Brown'));
$smarty->assign('customer_id', 100);
$smarty->display('index.dwt');
index.dwt:
<select name=customer_id>
{html_options values=$cust_ids selected=$customer_id output=$cust_names }
</select>
附:
Smarty {html_options} 的官方教程
{html_options}是一个自定义函数, 可以使用提供的数据,生成HTML的<select><option>标签,还可以设置选中项等属性。
Ecshop模板中html_options用法详解的更多相关文章
- *ecshop 模板中foreach用法详解
1.foreach分以下几个参数 from, item, name, iteration, index 2.使用foreach循环 如果php要传递一个数组(如:$array)给ecshop ...
- C++中的STL中map用法详解(转)
原文地址: https://www.cnblogs.com/fnlingnzb-learner/p/5833051.html C++中的STL中map用法详解 Map是STL的一个关联容器,它提供 ...
- AngularJS select中ngOptions用法详解
AngularJS select中ngOptions用法详解 一.用法 ngOption针对不同类型的数据源有不同的用法,主要体现在数组和对象上. 数组: label for value in a ...
- C++中const用法详解
本文主要内容来自CSDN论坛: http://bbs.csdn.net/topics/310007610 我做了下面几点补充. 补充: 1. 用const声明全局变量时, 该变量仅在本文件内可见, 类 ...
- ThinkPHP模板IF标签用法详解
投稿:shichen2014 字体:[增加 减小] 类型:转载 时间:2014-07-01 我要评论 这篇文章主要介绍了ThinkPHP模板IF标签用法,需要的朋友可以参考下 ThinkPHP的IF标 ...
- c/c++中define用法详解及代码示例
https://blog.csdn.net/u012611878/article/details/52534622 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog. ...
- AngularJS中transclude用法详解
这篇文章主要介绍了AngularJS中transclude用法,详细分析了transclude的具体功能.使用技巧与相关注意事项,需要的朋友可以参考下 本文实例讲述了AngularJS中transcl ...
- Spring中@Async用法详解及简单实例
Spring中@Async用法 引言: 在Java应用中,绝大多数情况下都是通过同步的方式来实现交互处理的:但是在处理与第三方系统交互的时候,容易造成响应迟缓的情况,之前大部分都是使用多线程来完成此类 ...
- C++中的STL中map用法详解
Map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据 处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时 ...
随机推荐
- Android---keycode值以及相应名称
KEYCODE列表 电话键 键名 描写叙述 键值 KEYCODE_CALL 拨号键 5 KEYCODE_ENDCALL 挂机键 6 KEYCODE_HOME 按键Home 3 KEYCODE_ME ...
- 【POJ 2983】Is the Information Reliable?(差分约束系统)
id=2983">[POJ 2983]Is the Information Reliable? (差分约束系统) Is the Information Reliable? Time L ...
- IE訪问Oracle EBS打不开Form的问题
IE訪问Oracle EBS打不开Form的问题 例如以下图. 最后我才知道真正的原因.原来是兼容性视图的问题. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5 ...
- SpringMVC + hibernate 配置文件
web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="htt ...
- mysql-5.5 for linux源码安装
mysql-5.5 for linux源码安装 1.使用Yum安装依赖软件包 # yum install -y gcc gcc-c++ gcc-g77 autoconf automake bison ...
- NYOJ15括号匹配
NYOJ15括号匹配 括号匹配(二) 时间限制:1000 ms | 内存限制:65535 KB 难度:6 描述 给你一个字符串,里面只包含"(",")" ...
- hibernate初步2
Hibernate级联设计 数据库表之间的关系(主要关系有一对多.一对一.多对多)主要是从如下三个方面体现出来: 1.表体设计 2.实体类的设计 3.配置文件 以下是一些重要级联设计参数属性介绍: c ...
- Azure Command Line(Azure CLI)指南
1.安装. MSI安装程序:https://aka.ms/installazurecliwindows https://docs.microsoft.com/zh-cn/cli/azure/insta ...
- Python 41 多表查询 和 子查询
1.查询 完整的查询语句 select [distinct] {* | 字段 | 聚合函数 | 表达式}from 表名 ...
- RabbitMQ安装后,BADARG问题
最近RabbitMQ安装后始终不能运行,发现异常关键信息如下 =CRASH REPORT==== 10-Nov-2017::13:41:09 === crasher: initial call: ap ...