m_Orchestrate learning system---二十六、动态给封装好的控件添加属性
m_Orchestrate learning system---二十六、动态给封装好的控件添加属性
一、总结
一句话总结:比如我现在封装好了ueditor控件,我外部调用这个控件,因为要写数据到数据库,所以必须把包含textarea的那个元素的那么设置为数据库对应表的字段,怎么解决?
dom操作就好,用jquery
封装好的ueditor
<!-- ueditor -->
<script type="text/javascript" src="__TEACHER__/ueditor/ueditor.config.js"></script>
<script type="text/javascript" src="__TEACHER__/ueditor/ueditor.all.min.js"></script>
<script type="text/javascript" src="__TEACHER__/ueditor/lang/en/en.js"></script>
<!-- ueditor -->
<!--2、編輯器部分------------------------------------------> <!---------------------模組標題 --------------------->
<div class="pet_comment_list_title" style="padding-bottom: 0;display: none;">文章編輯器</div>
<!---------------------END 模組標題 ---------------------> <!---------------------模組內容 --------------------->
<div class="myEditor">
<form action="">
<textarea name="" id="fry_ueditor_content" ></textarea>
</form>
</div>
<!---------------------END 模組內容 ---------------------> <!-- ueditor -->
<script type="text/javascript">
var $=jQuery;
var width=$('.myEditor').width();
//$('.myEditor').css({'border':'5px ridge #ff00ff'});
//alert(width);
UE.getEditor('fry_ueditor_content',{
initialFrameWidth:width,
initialFrameHeight:300,
});
</script> <script>
//给textarea添加动态添加name属性,便于匹配不同表的数据库字段
function addDynamicNameAttr(nameAttrValue) {
$('#fry_ueditor_content').attr('name',nameAttrValue);
} </script>
<!-- ueditor -->
外部调用并且动态添加字段
<div id="note_student_article_online_part">
<!-- 文章部分-ueditor -->
{include file="common/ueditor" /}
<script>
//动态添加name属性字段
addDynamicNameAttr('n_content');
//alert($('#fry_ueditor_content').attr('name'));
</script>
<!-- 文章部分-ueditor -->
</div>
1、页面中php函数的格式(比如缩进)怎么样的都不对,可能是什么原因?
把页面从html缓存php就行了,就是页面后缀,
因为thinkphp里面支持html做后缀,但是这样html页面的php函数没有形
2、php页面中的ajax中链接地址怎么写?
还是这种url的形式,直接'article/dianzan'会出错
$.post("{:url('article/dianzan')}", { u_id: u_id, a_id: a_id } ,function (data) {
3、continue和break的使用?
continue是的级别是一条一条的记录
break的级别是整个循环
所以break的权限相当于是高于continue的
所以如果是以记录条为单位的操作用continue
如果是以整个循环为单位的用break
{volist name="notes" id="vo_1"}
<?php if($vo_1['n_type']!=1) continue;?>
4、html5页面如何播放音频?
直接audio标签即可
audio元素创建
<audio controls src="http://www.w3school.com.cn/i/song.mp3">
</audio>
controls:显示通用的用户控件,包括开始,停止,跳播,以及音量控制
5、php的if内置标签里面有echo没有?
if标签注意一下,里面没有echo
{if condition="$fry_upload_type eq 'a_content_pic2'"} capture="camera"{/if}
6、thinkphp判断数据库字段为null的方法是什么?
正确方式
$map1['f_jieduan_id']=['exp','is null'];
$map1['f_g_id']=['exp','is null'];
array( '某字段'=>array( 'exp', 'is null' ) )
或
array('_string' => '某字段 is not null');
下面这样是错的
$map1['f_jieduan_id']=['=',null];
$map1['f_g_id']=['=',null];
7、存储的数据只有一部分,可能的原因是什么(从数据库方面作答)?
存储的时候把多图地址ep_picture的字段格式设置为了varchar,所有只有255位,所以多的图片全部挂掉了,而且有的图片也显示不出来

8、同一段代码在index中执行正常,但是在update中执行出现异常错误的原因(index先执行,后执行update)?
foreach ($forumContents as &$key1){
$key1['f_content']=htmlspecialchars_decode($key1['f_content']);
}
因为是同一段代码,所以变量互相干扰了,因为smarty模板引擎是把解析好的模板内容扔到了控制器中
9、jquery找后代的两种方法是什么?
a、children找儿子(只有儿子,没有后代)
取得一个包含匹配的元素集合中每一个元素的所有子元素的元素集合。
可以通过可选的表达式来过滤所匹配的子元素。注意:parents()将查找所有祖辈元素,而children()只考虑子元素而不考虑所有后代元素。
b、find找后代
搜索所有与指定表达式匹配的元素。这个函数是找出正在处理的元素的后代元素的好方法。
var zan=myThis.find('span.c_like_num').html();
10、点赞的时候存进数据库里面的点赞人的id的字符串为0的原因是什么?
因为数据表的这个字段设置为了int,所以会把所有字符串替换为0。
11、file_put_contents只能创建文件不能创建目录,那么怎么在file_put_contents之前创建目录呢?
$path="./static/uploads/student/note/wpaint/";
if(!file_exists($path)){
mkdir ($path,0777,true);
}
12、thinkphp的根目录是在哪?
根目录就是public,就算你在控制器中也一样
$path="./static/uploads/student/note/wpaint/";
所以这样在thinkphp里面是对的
13、资源如何显示给用户下载?
其实就用a标签,href里面显示的就是要下载东西的地址,比如txt,pdf啊,等等
<a href="{$article.a_content_art2}">點擊顯示或下載類容</a>
14、js字符串和php字符串最大的区别是什么?
就拿字符串去掉空格来说
js中:str.trim()
php中:trim(str)
//修改部分默認選擇
var a_content_art1="{:addslashes($article['a_content_art1'])}";
console.log(a_content_art1);
if (a_content_art1.trim().length>0){
$("#note_student_article_online_part").trigger("click");
}
15、在edit或者已经写好事件的情况下,用trigger真是很方便很节约代码?
var a_content_vid2="{$article.a_content_vid2}";
if (a_content_vid2.trim().length>0){
console.log(a_content_vid2);
$("#note_student_video_local").trigger("click");
}
二、内容在总结中
m_Orchestrate learning system---二十六、动态给封装好的控件添加属性的更多相关文章
- 二十六. Python基础(26)--类的内置特殊属性和方法
二十六. Python基础(26)--类的内置特殊属性和方法 ● 知识框架 ● 类的内置方法/魔法方法案例1: 单例设计模式 # 类的魔法方法 # 案例1: 单例设计模式 class Teacher: ...
- (三十六)c#Winform自定义控件-步骤控件-HZHControls
官网 http://www.hzhcontrols.com 前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. GitHub:https://github.com/kww ...
- (二十六)分类信息的curd-分类信息添加
分类信息添加: 1.应在在左边的dtree上添加连接(展示所有的分类信息) d.add(...,"/store/adminCategory?method=findAll",&quo ...
- repeater中后台动态为控件添加属性
在此贴出repeater中的ItemDataBound事件中的代码: private void ItemDataBound(object sender, RepeaterItemEventArgs e ...
- WCF技术剖析之二十六:如何导出WCF服务的元数据(Metadata)[实现篇]
原文:WCF技术剖析之二十六:如何导出WCF服务的元数据(Metadata)[实现篇] 元数据的导出就是实现从ServiceEndpoint对象向MetadataSet对象转换的过程,在WCF元数据框 ...
- VMware vSphere 服务器虚拟化之二十六 桌面虚拟化之View Persona Management
VMware vSphere 服务器虚拟化之二十六 桌面虚拟化之View Persona Management 实验失败告终,启动VMware View Persona Management服务报10 ...
- 模板方法模式 Template method 行为型 设计模式(二十六)
模板方法模式 Template method 上图为网上百度的一份简历模板截图 相信大家都有求职的经历,那么必然需要简历,写简历的时候,很可能你会网上检索一份简历模板,使用此模板的格式,然后替换为 ...
- 二十六、Jcreator使用初步
摘自http://blog.csdn.net/liujun13579/article/details/7751464 二十六.Jcreator使用初步 Jcreator是一个小巧灵活的Java开发工具 ...
- WCF技术剖析之二十六:如何导出WCF服务的元数据(Metadata)[扩展篇]
原文:WCF技术剖析之二十六:如何导出WCF服务的元数据(Metadata)[扩展篇] 通过<实现篇>对WSDL元素和终结点三要素的之间的匹配关系的介绍,我们知道了WSDL的Binding ...
随机推荐
- Ubuntu 15.10 安装Qt5.5.1
本系列文章由 @YhL_Leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/50300447 本人使用的ubuntu系 ...
- Core abstraction layer for telecommunication network applications
A new sub-system, the core abstraction layer (CAL), is introduced to the middleware layer of the mul ...
- ASP.NET-model验证
在ASP.NET的model中,可以定义下面的这种属性,来实现前台签证字符串 RegularExpression(@"(|.*(?=.{6,})(?=.*\d)(?=.*[a-zA-Z]). ...
- n个骰子,和为x的概率分别是多少
开始我居然又没有想出来.. 还是看了解法.开始的时候,一直想的是用概率,百分比来求,后来才发现,用次数来求,最后除一下,更近清晰. 方法,可以是递归,每次多一个骰子的时候,次数分别加上个数以及上一次i ...
- [CSS3] CSS Background Images
Body with background image and gradient html { background: linear-gradient(#000, white) no-repeat; h ...
- Android recycleView的研究和探讨
RecyclerViewLibrary A RecyclerView libirary ,has some support, like headerAdapter/TreeAdapter,and Pu ...
- HDU5638 / BestCoder Round #74 (div.1) 1003 Toposort 线段树+拓扑排序
Toposort 问题描述 给出nn个点mm条边的有向无环图. 要求删掉恰好kk条边使得字典序最小的拓扑序列尽可能小. 输入描述 输入包含多组数据. 第一行有一个整数TT, 表示测试数据组数. 对 ...
- 为什么不建议用table进行布局
本文部分内容转载自:http://www.html5tricks.com/why-not-table-layout.html 刚刚接触html的时候,利用table进行页面布局是比较容易的.但是,在实 ...
- dialog.setCancelable与setCanceledOnTouchOutside的区别
dialog.setCancelable(false); dialog弹出后会点击屏幕或物理返回键,dialog不消失 dialog.setCanceledOnTouchOutside(false); ...
- 【参考】查找Oracle最高的几个等待事件以及锁的信息
1.通过操作系统的命令找到系统资源的bottleneck,如:CPU, Memory, I/O, Network 同时主要关注IOWait, PI/PO, Memory的使用情况 2.通过查询v$s ...