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---二十六、动态给封装好的控件添加属性的更多相关文章

  1. 二十六. Python基础(26)--类的内置特殊属性和方法

    二十六. Python基础(26)--类的内置特殊属性和方法 ● 知识框架 ● 类的内置方法/魔法方法案例1: 单例设计模式 # 类的魔法方法 # 案例1: 单例设计模式 class Teacher: ...

  2. (三十六)c#Winform自定义控件-步骤控件-HZHControls

    官网 http://www.hzhcontrols.com 前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. GitHub:https://github.com/kww ...

  3. (二十六)分类信息的curd-分类信息添加

    分类信息添加: 1.应在在左边的dtree上添加连接(展示所有的分类信息) d.add(...,"/store/adminCategory?method=findAll",&quo ...

  4. repeater中后台动态为控件添加属性

    在此贴出repeater中的ItemDataBound事件中的代码: private void ItemDataBound(object sender, RepeaterItemEventArgs e ...

  5. WCF技术剖析之二十六:如何导出WCF服务的元数据(Metadata)[实现篇]

    原文:WCF技术剖析之二十六:如何导出WCF服务的元数据(Metadata)[实现篇] 元数据的导出就是实现从ServiceEndpoint对象向MetadataSet对象转换的过程,在WCF元数据框 ...

  6. VMware vSphere 服务器虚拟化之二十六 桌面虚拟化之View Persona Management

    VMware vSphere 服务器虚拟化之二十六 桌面虚拟化之View Persona Management 实验失败告终,启动VMware View Persona Management服务报10 ...

  7. 模板方法模式 Template method 行为型 设计模式(二十六)

    模板方法模式 Template method 上图为网上百度的一份简历模板截图   相信大家都有求职的经历,那么必然需要简历,写简历的时候,很可能你会网上检索一份简历模板,使用此模板的格式,然后替换为 ...

  8. 二十六、Jcreator使用初步

    摘自http://blog.csdn.net/liujun13579/article/details/7751464 二十六.Jcreator使用初步 Jcreator是一个小巧灵活的Java开发工具 ...

  9. WCF技术剖析之二十六:如何导出WCF服务的元数据(Metadata)[扩展篇]

    原文:WCF技术剖析之二十六:如何导出WCF服务的元数据(Metadata)[扩展篇] 通过<实现篇>对WSDL元素和终结点三要素的之间的匹配关系的介绍,我们知道了WSDL的Binding ...

随机推荐

  1. Fedora 17 无线网卡配置笔记

    转载:http://www.psichen.com/fedora-17-wifi/ 安装并更新完F17后,在网络选项中没有出现无线网,需要自己安装无线网卡驱动.而F17中默认网卡名称从以前的”eth0 ...

  2. HDU 4303 Contest 1

    说实话,挺复杂的一道题. 我采用栈的方式,DFS在搜索完一个节点的所有子结点后,通过排序,加快计算该结点所有可能的路径:子结点与子结点的连通,子结点与父结点的连通,通过父结点与各祖先结点的连通.同时记 ...

  3. 使用Java语言实现,自己主动生成10个整数(1~100,求出生成数列中的最大值和最小值,不同意使用Arrays类的sort方法

    这是考察主要的java基础,没啥难点,直接上代码,近期在准备面试,所以做一些基础的面试题练练手 public class Demo1 { public static void main(String[ ...

  4. Android语音播报、后台播报、语音识别

    Android语音播报.后台播报.语音识别 本文介绍使用讯飞语音实现语音播报.语音识别功能. 讯飞开放平台:http://www.xfyun.cn/index.php/default/index 程序 ...

  5. BZOJ 3112 [Zjoi2013]防守战线 线性规划

    题意: 简单叙述: 一个长度为n的序列,在每一个点建塔的费用为Ci.有m个区间.每一个区间内至少有Dj个塔.求最小花费. 方法:线性规划 解析: 与上一题相似.相同使用对偶原理解题.解法不再赘述. 代 ...

  6. iOS7实现带文本输入框的UIAlertView及获取TextField文本内容

    if (customAlertView==nil) { customAlertView = [[UIAlertView alloc] initWithTitle:@"自定义服务器地址&quo ...

  7. 极客时间 mysql实战45讲下载读 08讲事务到底是隔离的还是不隔离的 笔记

    笔记体会: 1.innodb支持RC和RR隔离级别实现是用的一致性视图(consistent read view) 2.事务在启动时会拍一个快照,这个快照是基于整个库的.基于整个库的意思就是说一个事务 ...

  8. xBIM 基础08 WeXplorer 简介

    系列目录    [已更新最新开发文章,点击查看详细]  一.WeXplorer 简介 WeXplorer 是 XBIM 工具包的可视化部分,它使用预处理的 WexBIM 文件在 Web 上处理 IFC ...

  9. vue中响应式props办法

    title: vue中响应式props办法 toc: false date: 2018-12-25 21:22:49 categories: Web tags: Vue 更新props数据时,使用th ...

  10. validform

    一.validform是什么?            validform是一款智能的表单验证js插件,它是基于jQuery库与css,我们只需要把表单对象放入,             就可以对整个表 ...