thinkphp修改及编写标签库,编辑器的使用
在view目录下创建Index_aaa.html
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>select</title></head><body><tagLib name="html"/><html:select options="address" selected="sh" values="address"/></body></html>
public function aaa(){$this->assign("address",["sh"=> "上海","天津","北京","郑州"]);$this->display();}



public function _ms($tag) {$name = $tag['name'];$options = $tag['options'];$id = $tag['id'];$selected = $tag['selected'];$parseStr = '<select id="'.$id.'" name="'.$name.'" >';$parseStr .='<?php foreach($'.$options.' as $val) { ?>';$parseStr .='<?php if("'.$selected.'"==$val) { ?>';$parseStr .= '<option selected="selected" value="<?php echo $val ?>"><?php echo $val ?></option>';$parseStr .= '<?php } else { ?><option value="<?php echo $val ?>"><?php echo $val ?></option>';$parseStr .= '<?php } ?>';$parseStr .= '<?php } ?>';$parseStr .= '</select>';return $parseStr;}
public function _ms($tag) {$name = $tag['name'];$options = $tag['options'];$id = $tag['id'];$selected = $tag['selected'];$parseStr = '<select id="'.$id.'" name="'.$name.'" >';$parseStr .='<?php foreach($'.$options.' as $val) { ?>';/* $parseStr .='<?php if("'.$selected.'"==$val) { ?>';*///selected的值可以随便写$parseStr .='<?php if($'.$selected.'==$val) { ?>';//值可以先分配再写$parseStr .= '<option selected="selected" value="<?php echo $val ?>"><?php echo $val ?></option>';$parseStr .= '<?php } else { ?><option value="<?php echo $val ?>"><?php echo $val ?></option>';$parseStr .= '<?php } ?>';$parseStr .= '<?php } ?>';$parseStr .= '</select>';return $parseStr;}
public function aaa(){$this->assign("address",["上海","天津","北京","郑州"]);$this->assign("sh","天津");$this->display();}
<tagLib name="html"/><html:ms id="aa" name="uu" options="address" selected="sh"/><br>

public function _select($tag) {$name = $tag['name'];$options = $tag['options'];$values = $tag['values'];$output = $tag['output'];$multiple = $tag['multiple'];$id = $tag['id'];$size = $tag['size'];$first = $tag['first'];$selected = $tag['selected'];$style = $tag['style'];$ondblclick = $tag['dblclick'];$onchange = $tag['change'];if(!empty($multiple)) {$parseStr = '<select id="'.$id.'" name="'.$name.'" ondblclick="'.$ondblclick.'" onchange="'.$onchange.'" multiple="multiple" class="'.$style.'" size="'.$size.'" >';}else {$parseStr = '<select id="'.$id.'" name="'.$name.'" onchange="'.$onchange.'" ondblclick="'.$ondblclick.'" class="'.$style.'" >';}if(!empty($first)) {$parseStr .= '<option value="" >'.$first.'</option>';}if(!empty($options)) {$parseStr .= '<?php foreach($'.$options.' as $key=>$val) { ?>';if(!empty($selected)) {$parseStr .= '<?php if(!empty($'.$selected.') && ($'.$selected.' == $val || in_array($key,$'.$selected.'))) { ?>';$parseStr .= '<option selected="selected" value="<?php echo $val ?>"><?php echo $val ?></option>';$parseStr .= '<?php }else { ?><option value="<?php echo $val ?>"><?php echo $val ?></option>';$parseStr .= '<?php } ?>';}else {$parseStr .= '<option value="<?php echo $val ?>"><?php echo $val ?></option>';}$parseStr .= '<?php } ?>';}else if(!empty($values)) {$parseStr .= '<?php for($i=0;$i<count($'.$values.');$i++) { ?>';if(!empty($selected)) {$parseStr .= '<?php if(isset($'.$selected.') && ((is_string($'.$selected.') && $'.$selected.' == $'.$values.'[$i]) || (is_array($'.$selected.') && in_array($'.$values.'[$i],$'.$selected.')))) { ?>';$parseStr .= '<option selected="selected" value="<?php echo $'.$values.'[$i] ?>"><?php echo $'.$output.'[$i] ?></option>';$parseStr .= '<?php }else { ?><option value="<?php echo $'.$values.'[$i] ?>"><?php echo $'.$output.'[$i] ?></option>';$parseStr .= '<?php } ?>';}else {$parseStr .= '<option value="<?php echo $'.$values.'[$i] ?>"><?php echo $'.$output.'[$i] ?></option>';}$parseStr .= '<?php } ?>';}$parseStr .= '</select>';return $parseStr;}
window.UEDITOR_HOME_URL = "/Public/js/ueditor/";

$parseStr = '<script id="container" name="content" type="text/plain">这里写你的初始化内容</script><script type="text/javascript" src="__ROOT__/Public/js/ueditor/ueditor.config.js"></script><script type="text/javascript" src="__ROOT__/Public/js/ueditor/ueditor.all.js"></script><script type="text/javascript"> var ue = UE.getEditor("container",{emotionLocalization:true,lang:"zh-cn",initialFrameWidth:"80%",initialFrameHeight:320,textarea:"content",initialContent:"欢迎留言!", autoClearinitialContent:true}); </script>';
<tagLib name="html"/><html:editor type="UEDITOR"></html:editor>
thinkphp修改及编写标签库,编辑器的使用的更多相关文章
- thinkphp 标签库
内置的模板引擎除了支持普通变量的输出之外,更强大的地方在于标签库功能. 标签库类似于Java的Struts中的JSP标签库,每一个标签库是一个独立的标签库文件,标签库中的每一个标签完成某个功能,采用X ...
- jsp程序设计:jstl之JSTL标签库
转载自:http://www.blogjava.net/haizhige/archive/2008/10/26/236783.html,个人进行了一些修改. 前言:写一个taglib一般可以继承Sim ...
- java-自定义标签&&JSTL标签库详解
自定义标签是Jav aWeb的一部分非常重要的核心功能,我们之前就说过,JSP规范说的很清楚,就是Jsp页面中禁止编写一行Java代码,就是最好不要有Java脚本片段,下面就来看一下自定义标签的简介: ...
- JavaWeb学习篇之----自定义标签&&JSTL标签库详解
今天来看一下自定义标签的内容,自定义标签是JavaWeb的一部分非常重要的核心功能,我们之前就说过,JSP规范说的很清楚,就是Jsp页面中禁止编写一行Java代码,就是最好不要有Java脚本片段,下面 ...
- ThinkPHP3.2.3 自定义标签库的使用
ThinkPHP 3.2.3 手册中标签库驱动的地址是: http://www.kancloud.cn/manual/thinkphp/1859 标签库的地址是:http://www.kancloud ...
- 学习笔记_Java_day13_JSTL_自定义标签库(9)
自定义标签 1 自定义标签概述 1.1 自定义标签的步骤 其实我们在JSP页面中使用标签就等于调用某个对象的某个方法一样,例如:<c:if test=””>,这就是在调用对象的方法一样.自 ...
- jsp的标签库和自定义标签
1.jstl标签库 JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. JSTL支持通用的.结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签. ...
- 十、JSTL标签库
l JSTL标签库(重点) l 自定义标签(理解) l MVC设计模式(重点中的重点) l Java三层框架(重点中的重点) JSTL标签库 1 什么是JSTL JSTL是apache对EL表达式 ...
- EL表达式、JSTL标签库
一.EL(Expression Language)表达式 语法结构:${var} 若要停用对EL表达式的评估的话,需要使用page指令将isELIgnored属性值设为true: <%@ pag ...
随机推荐
- 如何比较两个SQL数据库的字段差别。
程序好几个版本了,数据也弄出好好几版本,这下好了,原程序要升级,当然数据库也要升,可是里面已经有了大量的数据了,这时候怎么办.写了个存储过程来解决,一目了然. 因为2005及以上的数据库已经没有表sy ...
- python3.5学习笔记--一个简单的图片爬虫
参考资料:http://v.qq.com/boke/page/q/g/t/q01713cvdgt.html 目的:爬取网站图片 实际上以上链接的视频中已经将整个过程说的非常明白了,稍微有点计算机基础的 ...
- CSS的一些简单概念
行内元素与块级元素 在标准文档流里面,块级元素具有以下特点: ①总是在新行上开始,占据一整行:②高度,行高以及外边距和内边距都可控制:③宽带始终是与浏览器宽度一样,与内容无关:④它可以容纳内联元素和其 ...
- .pyc是个什么鬼?
1. Python是一门解释型语言? 我初学Python时,听到的关于Python的第一句话就是,Python是一门解释性语言,我就这样一直相信下去,直到发现了*.pyc文件的存在.如果是解释型语言, ...
- Visual Studio 在调试时启用编辑功能
Visual Studio边调试边修改 如果你在调试一个web应用程序的时候,想进行编辑,可以有如下两种方法: 方法一:在web项目的属性页里的web标签页,选中"启用编辑并继续&qu ...
- WindowsForm的ComboBox初始化绑定并选中默认值
1.通过查询将默认值放到第一个,然后进行绑定 //绑定线别 private void LineBind() { SqlConnection myConnection = new SqlConnecti ...
- C# 抽象类abstract
不能初始化的类被叫做抽象类,它们只提供部分实现,但是另一个类可以继承它并且能创建它们的实例,有未被实现的方法.抽象类不可以new对象. "一个包含一个或多个纯虚函数的类叫抽象类,抽象类不能被 ...
- bug__android studio 出现布局文件不提示,且点击代码不能跟踪代码
1,点击布局文件,出现 Cannot find declaration to go to ? 且 点击代码不能跟踪代码? 把 项目的build.gradle 中的 compileSdkVersi ...
- ASCIITable: 演示 Arduino 串口输出的进阶功能
原文地址 - https://www.arduino.cc/en/Tutorial/ASCIITable ASCII字符表 本例展示了高级的串口打印功能,通过本功能可以在Arduino软件(IDE)的 ...
- ORACLE10gRAC数据库迁移至10gRAC
1.数据库备份RUN {ALLOCATE CHANNEL ch00 DEVICE TYPE disk;ALLOCATE CHANNEL ch01 DEVICE TYPE disk;ALLOCATE C ...