【实习】大三暑假实习总结:工作记录、个人日记、感悟总结

一、个人日记

第一天:

今天是2019年6月20号,星期四,西安,都市之门c坐607,我坐在了办公室,我,终于坐下了。

第一天上班,感受很不一样,仿佛回到了小学、初中早上早起上学的样子,不能迟到,着急忙慌,好久没有这样过了。

西安的早高峰,第一次遇见,可怕,来西安的第三年第一次在感受上班路上的艰辛。

地铁,人挤人,公交,挤不上去的无力。

成年人的世界,真是不同,为了生存,为了活着,乐观的人倒是乐观,不会有什么感受辛苦,悲观的人,也许就会觉得:众生皆苦,每个人都一样。

办公室,在6楼,而我坐电梯做错,原来大的办公楼是分高层电梯和底层电梯。

办公室,还没人带我,都是成年人,都是大佬,小弟我不敢说话。哈哈哈。

今天下着小雨,稀稀拉拉。办公室一共17个人左右,我瞬间找到了头发最少的那个大佬,头顶的反光格外油量。

其实吧,现在这个时间,9.09,还能随便写一下自己的心情,还是不错滴。

---------------------------

8个小时后现在18.45,啧啧,我的感受就是:一脸懵逼。

第一次工作,第一天工作,压力好大。学生,真的是,学的那点东西太水了,和实际工作真的是,差别太大啦。

我现在只知道:这个公司叫北京华科软,我在的是西安分公司,这里16-7个人,目前正在做的系统是 昆明勘探研究所系统,我觉得做的网页后端,用的语言是JavaScript、HTML、css。这几个,我是零基础。。。。

今天干了什么?今天安装了运行环境,登录的系统,见到了大的项目。看了670行的网页代码,回顾了HTML,学了下JavaScript,w3school真是个好网站。

学生,果真是太轻松啊,这里的人,感觉都是……非人类,一天工作10个小时我的天,中午只休息一个小时我的天,下午一点工作,坐在椅子上然后一直到6点的样子,我的天。

生活压力真大,这里没有员工食堂,就是个办公区,吃饭好贵,和学校一比较就真贵,是学校的2倍。

今天的日记,没有记录工作的细节,之前还说要记录工作呢,结果今天全都是心情感受了。

原来,程序员的日子是这样的,怪不得会掉头发,啧啧啧。

今天,有点点痛苦,第一天来,没有头绪没有思路不知道干嘛,看代码还行,大概看懂,那个开发软件是真的不会用。还有就是,我是不太不会和人聊天了,感觉自己不是那种会招人喜欢的,不爱和别人交流。

我来世干什么的?感受工作气氛?为了简历?为了学到东西?

哎,还是当猪猪的生活舒服啊,啧啧。

第三天:

今天是第三天上班,我依旧懵逼,现在上午8.48,周六,下雨。

周六周末都加班,我真是,体会到了,被安排的明明白白。

 

感觉我上手极慢,啥都不会,也不主动问,不主动学,我现在很被动。

我很难受,特别难受,不知道该怎么办,不知道要做什么,昨天改bug,上网查各种东西,感觉没啥用,代码看不懂,项目不知道是什么。

 

我觉得,这样下去就是浪费时间。

我需要改变,主动问,什么不会问什么。

这样的被动状态,感觉自己不怎么思考,不去想这个问题,对项目没有任何感觉,不知道这项目怎么写出来,现在的问题主要是心态,心态。

 

有时候也想放弃,回学校上课多轻松,但是,回学校我会后悔的,。

我需要明确,我来实习是来干嘛的?

 

对,我来干嘛的???

感受工作氛围,给自己一些压力,让自己忙起来,去做一些事情。

简历上有个实习经历。

 

但是有点压力太大了,现在的环境太过逼迫我了,早上6.30起床,晚上9.30会宿舍,这样的生活太压抑太紧张太刺激了,导致我心态不好,所以学习进度就很慢。

其实,我应该放轻松一点,我是来白嫖的。

 

我来白嫖学习一些东西,不管是什么,提前感受一下工作气氛,不是很好嘛?

 

提前进入一个快节奏的生活,不是很好嘛?

 

之前,我的生活太轻松了。

生于忧患死于安乐,我不能总是很安乐,加油。

 

今天要解决的是,把昨天bug改好提交上去,然后,然后不知道了。

 

 

下午17.47:

实习第三天的感受:公司正在做的项目叫做:昆明勘测设计研究院PRP系统

一个bs架构的系统,,,我理解的,该系统实现很多功能,基于Java,JavaScript,HTML,css等前端语言开发。

 

使用的框架是NUI,开发环境是普元EOS。

 

想要学会,首先看懂HTML代码,然后大概看一看JavaScript,再去看框架,也就是上面图片中的内容。

系统的每一个页面都是一个个表单,表单涉及到很多东西上图所示。

 

现在我的学习遇到了瓶颈,不知道该干什么,而大家都在忙,且非常忙。

我觉得 我真的不像我自己,做事犹豫,哎,,,

想提前回去又不敢,这像我?我从来都是一个霸道的人,,,现在竟然这么怂,,,

第四天:

今天 安装Oracle 失败,因为用户名是中文,安装时出现错误,,,,

这个问题其实不大,百度一下就ok。

以后要多用百度啊。

--------------
下午18.28,今天一天,没有做什么事情,安装了Oracle,自己动手解决了问题,靠百度,没有很多请教老大。
今天,觉得老大人也挺好的,我也应该多多用心学习。调整好心态,加油!未来加油!

第五天:

今天是上班的第五天,啧啧,来公司都已经5天了,感觉我还是什么都不会。。。

感觉很难受,5天,毕业的哥们都已经上手开发了。。。

 

今天,还不知道任务是什么,不管是什么,都要全力以赴,加油去做,去学习,去百度。

 

在eos中连接数据库时,出现了问题。

我要连接我本地的数据库,但是【连接URL】出错,将[localhost]改为127.0.0.1/orcl,就ok了。

 

 

 

Tl项目的EOS属性:

7.2工作第10天
今天 手把手教我的老大,对我有点无奈,哈哈

7.4号 今天工作第12天
每天都有新挑战,每天的工作都比前一天更上一个层次。
牛逼的程序员,造轮子,优秀的程序员会熟练使用轮子,而我,找不到轮子,也不知道怎么用。
说说王娜这个小祖宗吧,唉,感觉我对她太不放心,感觉。。。我这样不太好,两个人都有自己的空间,越来越少两个人一起的时间
可能周内吧,不过我估计周末也差不多这样。爱咋咋地吧快,各忙各的。
感情这个东西真的要维系一下。

今天,工作内容。简单的单表全都做完了,熟悉系统熟悉开发模式了,之后就要自己写页面啦!

7.5工作第13天 一天做了半个功能 

7.6 周六 休息
没有想象中的休息的那么舒服,没有之前上班和不上班明显的差异,相对论。

工作上的感受:
从最开始的看代码,改bug,到第三周就开发,这周5天,开发的几个功能,无非就是复制粘贴,用代码生成器,做着机械式的劳动,真是矛盾,一边记录着机械式劳动并对此嗤之以鼻一边又在实际工作中希望做一些简单的,会的东西。
下周就有了新的挑战,做的功能不是代码全部生成,语需要自己调一些函数甚至自己写一些函数去解决特定功能。
工作的几天并没有很开心,对我来说,如果想感受工作的气氛,感受实际程序员的工作是怎样的话,2周就够了,来体验生活。现在是工作第三周结束,生活已经体验到了,学到了什么技能??
好像并没有,7只是体会到了早高峰的艰辛,体会到早上晚上拥挤的公交,体会到为了生活忙忙碌碌奔跑的人们,年轻人,中年人…
以后的工作,我很大概率不会从事前端吧,写网页,写增删查改业务逻辑,然后这个我嗤之以鼻的功能,现在我也并不能做好。
来工作的几天,我感受到自己的基础并不扎实,网络,操作系统,c++,数据结构,算法,并没有用到太多,但确实这些学科是一个基础。
这个工作所需的技能,java ,JavaScript.,html,我也没有精通。
心得体会,或者说学到了什么,没有在技能上,而是在宏观的思想上,让我意识到不管去什么地方,都要学新的很多的东西,这是常态应该接受,就像初中生考到高中,高中生靠近大学,同样大学生步入工作,人这一生要去好多地方,要融入很多环境,不同的环境,就是这样。
这次实习,对自己人生经历,大学经历,工作经历有很多的补充,但和其他实习的同学相比,
这次工作唯一的遗憾,就是没能在自己的专业技能上带来更多的提升,带来进步,做一些自己以后不会从事的工作,完成一些任务也没有带来很多快乐,也许这是众生常态,没有选择权。为了能够有选择权,选择自己喜欢做的,又要付出什么,不能想象。

恋爱上,这周和王娜真的是,两个人的心情每天坐过山车,我觉得这样不太好,不够稳定。不过恋爱嘛,也就是这样子,太在乎对方,所以个人情绪影响很大。任何事的好坏区别都不那么严格,关键看自己怎么想吧。一件事,多种方向多个逻辑甚至正反两种都可以说的通,就看自己愿意倾向哪一种了。
以前和王娜说我很粘人,她还不信,唉,这个女人,真的是。。。
恋爱在我的生活中占据很大一部分,虽然可能一天两个人没说几句话,但心中的这份念想支撑着我一日三餐早出晚归,如果哪一天没有这份念想了,整个人都不好了吧,颓废到不敢想象。

两个人明明都很在乎对方,可还是会有一些吵闹。
这两次真的是气死我了,第一天挂我电话忙去了,第二天加班很晚被训了没空理我没视频,第三天自己玩去了,还看电影晚上12点多才回去。。。王娜现在呀,不是小姑娘了,从和我在一起的时候,就不是家里的乖乖女了,但还要让家里觉得自己很乖,王娜有自己的想法,有自己的原则想做什么不想做什么,外人不应该约束,我也觉得家里不应该约束那么多,但到了我这里,我却觉得自己约束王娜很多。。。纠结,不知道这样子对不对,也许这就是爱滴绑架。家里父母爱你,你也不想让父母担心,所以会善意谎言告诉他们自己在干什么,会不会有一天,王娜出去玩的很开心了和同事去什么夜店放飞自我,然后给我发的消息是晚安宝贝睡觉了。
应该不会到这一步,这样的话,两个人就是情侣这层关系捆绑着了,渴望挣脱得到自由,这种情况,两个人心里都会感觉到吧。

生活上,我的生活,比王娜多一点孤独吧,少一些人际交往,没什么朋友同事一起说说笑笑,没什么真心面对的人,而且也不会有面子工程,表面功夫都懒得做。
做饭,真的感觉到,不是自己多么饿想吃东西,就是觉得做饭很取悦自己,做一些自己想做的事情感觉没有浪费时间。

我对我的生活满意吗?一般般吧,以为经过工作的洗礼,我会更加珍惜学习的时间,好好学习,好好复习,可是每次都是想着想那样做,真正该做的时候,已经没那个心情了。有心情的时候,又确实没时间做。
唉 普通人,难成大器。

7.8工作第14天
今天做一个功能。
中午吃饭想起来,上次去系统里,看到一个没有内容的数据字典,就给删除了。当时觉得没啥用,删了就删了。
没一会儿,下午的时候,老大就问:谁tm动数据字典了??
我躲在角落里,默默低头不敢说话。。

7.9工作15天
今天,老大看我们写一个两个表的左连接查询都费劲,说你们啥不是没见过3000行的SQL??
咳咳 我再次。。。

7.18打开手机一查日期,我才来上班18天。

我租房子也才两周14天。

2019年7月15号

今天,来公司上班的第21天(周末休息除外),第21天坐在办公桌前上班。

昨天和龙哥说完要离职,今天的心态已经完全不一样了,心完全不在这里,我觉得自己不属于这里了已经。

感慨万千,这是我第一次出来工作,虽然只是一个实习生,虽然,并没有完成很多任务,虽然没有学到很多知识,但这是第一次作为一个程序员工作。

 

不知结果如何,还未和技术总监交涉,所以现在不清楚能否立刻离开。我知道这样不太好,但我的心不在这里,我想快快离开,去做我该做的想做的事情。

比赛,软件设计大赛的国赛,图论的复习,准备秋招。

 

来公司以后,我变得极度不自信,没有自己的想法,做事不强硬不果断犹犹豫豫,这不像是我,所以我认为,我不属于这里。

 

我应该回到我自己的战场,那样我会很从容应对,我会感受到快乐。

 

总结一下这次实习经历:短短20天,没干什么很让自己骄傲的事,甚至不知道该不该往简历上写这段经历,但这段经历,不后悔,有收获。

收获:

  • 工作上所见所闻,正规公司项目
  • 生活上,独立自主
  • 个人感情上
  • 个人学习体会上,如何在高压下学习一门几门全新知识,从未了解
  • 与人交往,人际沟通

二、工作记录

法律法规:

文件名:law

 

包名:com.hkrsoft.prp.hsequality

 

表名:prp_hsequality_law 大写

 

代码生成器:这里

111111111111111111111111111111111

遇到了个问题,都怪自己不仔细

 

最终,终于在第二天,老大给解决啦。不能用谷歌浏览器,用别的浏览器就没问题。。。

 

22222222222222222222222222

这个问题,和别的自动生成的代码文件名,不一样啊…

 

7.1号,今天调样式:

input页面只有保存按钮 ,view页面只有返回,WF流程页面啥都没有

问题1 :蓝色底 与 没有蓝色底

需要修改:就欧克了

问题2:List页面中的查询、重置修改:要将整个作为一个DIV,放到table的下面

 

问题3:

 

仔细看一下区别:同样是查询重置的一个table,一个最左边有拖动条,一个没有。

其实这个不难,分析一下为什么有拉框就是说这个块小,但是你的table太大,放不下,所以出现拖动条。

改动后:

 

问题4:下拉框不显示内容,加了单引号才显示。双引号也不可以。

 

安委会设置:界面原型

 

 

文件名:SecurityCommitee

 

包名:com.hkrsoft.prp.hsequality

表名:PRP_HSEQ_SECUCOMMI  安委会信息

 

PRP_HSEQ_ SECUCOMMI_DLSUB   安委会成员信息  字表要注意命名规范

  

 

字表要加一个mid

 

字表一般都作为查询列显示

0702问题

在list页面下,分类不显示,后看代码,将div中的两个删除,解决问题

 

 

安全管理人员:

文件名:safemanger

包名:com.hkrsoft.prp.hsequality

 

表名:PRP_HSEQUALITY_MGR

 

下拉框选择内容:

mini.ComboBox  下拉列表输入框。

Extend PopupEdit Usage

<input class="mini-combobox" style="width:150px;"      url="../data/countrys.txt" value="cn" showNullItem="true" allowInput="true" textField="text" valueField="id" data=”[{id:1,text:男},{ id:2,text:女}]” />

 

 

特种作业人员

 

问题1:多个附件的上传:

 

2、添加数据字典:

工种类别:PRP_HSEQ_SPECIALWORKMAN_JOBTYPE

 

 

 

 

应急:emergency

应急预案

文件名:emergency

表名:PRP_HSEQUALITY_EMERPLAN

应急演练计划:

 

文件名:EmergencyExercise

表名:PRP_HSEQ_PLAYDO

 

应急演练记录:

问题:多选的块,应该编程单选:

这应该单选,找一个属性修改:将其改为false

事故隐患排查新增

 

 

   

主子表:

   主表:PRP_HSEQ_ACCIDECHEC

  字表:PRP_HSEQ_ACCIDECHEC_SUB

 

数据集:HiddenACCIDECHEC

字典项:

PRP_HSEQ_YHDL

安质管理_事故隐患排查_隐患大类

 

PRP_HSEQ_HIDDENT_LAND

安置管理-事故隐患排查-地质环境隐患

PRP_HSEQ_HIDDENT_MANGER

安置管理-事故隐患排查-管理性隐患

PRP_HSEQ_HIDDENT_ACTION

安置管理-事故隐患排查-行为性隐患

PRP_HSEQ_HIDDENT_EQUIPMENT

安质管理-事故隐患排查-设备实施隐患

PRP_HSEQ_HIDDENT_RANK

安质管理-事故隐患排查新增-隐患等级

PRP_HSEQ_HIDDENT_MEASURE

安质管理-事故隐患排查新增-整改措施

 

整改结果:

PRP_HSEQ_HIDDENT_RESULT

安质管理-事故隐患排查-整改结果

 

联动参考:http://127.0.0.1:8080/prptl/htgl/htsp/PrpHtglHtspList.jsp

 

组织机构选择单位 参考页面:项目登记-

http://127.0.0.1:8080/prptl/xmgl/project/PrpXmglProjectForm.jsp

 

 

 

组织机构选择人员 参考:coframe/org/employee/  select_major.jsp

隐患整改通知:

表名:PRP_HSEQ_HIDDINFORM

字表:PRP_HSEQ_HIDDINFORM

 

HIDDINFORM

 

隐患整改回复

子表:PRP_HSEQ_HIDDREPLY_SUB

 

重大事故隐患信息报告单

主表:PRP_HSEQ_HUGEHIDDENREPORT

子表:PRP_HSEQ_HUGEHIDDENREPORT_SUB

文件夹:HiddentAccident

三、工作查询资料

 

CSS样式分为:内联式css样式、嵌入式css样式、外部式css样式。
对CSS三种样式定义及其实例:
1. 内联式css样式。
内联式css样式表就是把css代码直接写在现有的HTML标签中,如下面代码:
这里文字是红色。
css样式代码要写在style=""双引号中,如果有多条css样式代码设置可以写在一起,中间用分号隔开(英文状态下;)。
2. 嵌入式css样式。
嵌入式css样式,就是可以把css样式代码写在标签之间。如下面代码实现把三个标签中的文字设置为红色:
span{color:red;}嵌入式css样式必须写在之间,并且一般情况下嵌入式css样式写在之间。
 
3. 外部式css样式。
外部式css样式(也可称为外联式)就是把css代码写一个单独的外部文件中,这个css样式文件以“.css”为扩展名(也可以为调用其他网站CSS)。
 
4. 注意事项: 
1、css样式文件名称以有意义的英文字母命名,如 main.css。 
2、rel=”stylesheet” type=”text/css” 是固定写法不可修改。 
3、标签位置一般写在标签之内。
掌握好三种CSS三种样式使用方法在Web开发中将节省很多时间。

 

 

miniui表单验证守则总结 - L蓝天碧水L - 博客园

1,页面效果图
https://images2015.cnblogs.com/blog/975064/201606/975064-20160622171652938-1160463589.png

2,代码实现

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 

 

 

<html xmlns="http://www.w3.org/1999/xhtml">

 

<head>

 

<title>表单验证规则总结</title>

 

<meta http-equiv="content-type" content="text/html; charset=UTF-8" /><link href="../demo.css" rel="stylesheet" type="text/css" />

 

 

 

 

 

<script src="../../scripts/boot.js" type="text/javascript"></script>

 

 

 

 

 

<style type="text/css">

 

.td1

 

{

 

text-align:right;

 

}

 

.td2

 

{

 

padding-left:15px;

 

font-size:13px;

 

font-family:Tahoma;

 

}

 

</style>

 

</head>

 

<body>

 

<h1>表单验证规则总结</h1>

 

 

 

<div id="form1" >

 

<table>

 

<tr>

 

<td class="td1">不允许为空:</td>

 

<td>

 

<input class="mini-textbox" required="true" />

 

</td>

 

<td class="td2">required="true"</td>

 

</tr>

 

<tr>

 

<td class="td1">必须是邮箱地址:</td>

 

<td>

 

<input class="mini-textbox" vtype="email" required="true"/>

 

</td>

 

<td class="td2">vtype="email"</td>

 

</tr>

 

<tr>

 

<td class="td1">必须是URL</td>

 

<td>

 

<input class="mini-textbox" vtype="url" required="true"/>

 

</td>

 

<td class="td2">vtype="url"</td>

 

</tr>

 

<tr>

 

<td class="td1">必须是整数(int)</td>

 

<td>

 

<input class="mini-textbox" vtype="int" required="true"/>

 

</td>

 

<td class="td2">vtype="int"</td>

 

</tr>

 

<tr>

 

<td class="td1">必须是数字(float)</td>

 

<td>

 

<input class="mini-textbox" vtype="float" required="true"/>

 

</td>

 

<td class="td2">vtype="float"</td>

 

</tr>

 

<tr>

 

<td class="td1">字符串长度(<= 6):</td>

 

<td>

 

<input class="mini-textbox" vtype="maxLength:6" required="true"/>

 

</td>

 

<td class="td2">vtype="maxLength:6"</td>

 

</tr>

 

<tr>

 

<td class="td1">字符串长度(>= 2):</td>

 

<td>

 

<input class="mini-textbox" vtype="minLength:2" required="true"/>

 

</td>

 

<td class="td2">vtype="minLength:2"</td>

 

</tr>

 

<tr>

 

<td class="td1">字符串长度(2-6):</td>

 

<td>

 

<input class="mini-textbox" vtype="rangeLength:2,6" required="true"/>

 

</td>

 

<td class="td2">vtype="rangeLength:2,6"</td>

 

</tr>

 

<tr>

 

<td class="td1">字符数个数(2-6):</td>

 

<td>

 

<input class="mini-textbox" vtype="rangeChar:2,6" required="true"/>

 

</td>

 

<td class="td2">vtype="rangeChar:2,6"</td>

 

</tr>

 

<tr>

 

<td class="td1">数字范围(0-100):</td>

 

<td>

 

<input class="mini-textbox" vtype="range:0,100" required="true"/>

 

</td>

 

<td class="td2">vtype="range:0,100"</td>

 

</tr>

 

<tr>

 

<td class="td1">必须是日期格式(如yyyy-MM-dd):</td>

 

<td>

 

<input class="mini-textbox" vtype="date:yyyy-MM-dd" required="true"/>

 

</td>

 

<td class="td2">vtype="date:yyyy-MM-dd"</td>

 

</tr>

 

<tr>

 

<td class="td1">必须是日期格式(如MM/dd/yyyy):</td>

 

<td>

 

<input class="mini-textbox" vtype="date:MM/dd/yyyy" required="true"/>

 

</td>

 

<td class="td2">vtype="date:MM/dd/yyyy"</td>

 

</tr>

 

<tr>

 

<td class="td1" style="color:Red;">邮箱格式,5~20个字符(组合):</td>

 

<td>

 

<input class="mini-textbox" vtype="email;rangeLength:5,20;" required="true"/>

 

</td>

 

<td class="td2">vtype="email;rangeLength:5,20;"</td>

 

</tr>

 

<tr>

 

<td class="td1" style="color:Red;">必须输入英文(自定义):</td>

 

<td>

 

<input class="mini-textbox" onvalidation="onEnglishValidation" />

 

</td>

 

<td class="td2">onvalidation="onEnglishValidation"</td>

 

</tr>

 

<tr>

 

<td class="td1" style="color:blue;">必须输入英文(自定义vtype):</td>

 

<td>

 

<input class="mini-textbox" vtype="english"/>

 

</td>

 

<td class="td2">vtype="english"</td>

 

</tr>

 

<tr>

 

<td class="td1" style="color:Red;">必须输入英文+数字(自定义):</td>

 

<td>

 

<input class="mini-textbox" onvalidation="onEnglishAndNumberValidation" />

 

</td>

 

<td class="td2">onvalidation="onEnglishAndNumberValidation"</td>

 

</tr>

 

<tr>

 

<td class="td1" style="color:Red;">必须输入中文(自定义):</td>

 

<td>

 

<input class="mini-textbox" onvalidation="onChineseValidation" />

 

</td>

 

<td class="td2">onvalidation="onChineseValidation"</td>

 

</tr>

 

<tr>

 

<td class="td1" style="color:Red;">身份证验证15~18位(自定义):</td>

 

<td>

 

<input class="mini-textbox" onvalidation="onIDCardsValidation" />

 

</td>

 

<td class="td2">onvalidation="onIDCardsValidation"</td>

 

</tr>

 

<tr>

 

<td></td>

 

<td>

 

<input value="Login" type="button" οnclick="submitForm()" />

 

</td>

 

</tr>

 

</table>

 

</div>

 

 

 

<script type="text/javascript">

 

mini.parse();

 

 

 

function submitForm() {

 

var form = new mini.Form("#form1");

 

 

 

form.validate();

 

if (form.isValid() == false) return;

 

 

 

//提交数据

 

var data = form.getData();

 

var json = mini.encode(data);

 

$.ajax({

 

url: "../data/FormService.aspx?method=SaveData",

 

type: "post",

 

data: { submitData: json },

 

success: function (text) {

 

alert("提交成功,返回结果:" + text);

 

}

 

});

 

}

 

////////////////////////////////////////

 

function onEnglishValidation(e) {

 

if (e.isValid) {

 

if (isEnglish(e.value) == false) {

 

e.errorText = "必须输入英文";

 

e.isValid = false;

 

}

 

}

 

}

 

function onEnglishAndNumberValidation(e) {

 

if (e.isValid) {

 

if (isEnglishAndNumber(e.value) == false) {

 

e.errorText = "必须输入英文+数字";

 

e.isValid = false;

 

}

 

}

 

}

 

function onChineseValidation(e) {

 

if (e.isValid) {

 

if (isChinese(e.value) == false) {

 

e.errorText = "必须输入中文";

 

e.isValid = false;

 

}

 

}

 

}

 

function onIDCardsValidation(e) {

 

if (e.isValid) {

 

var pattern = /\d*/;

 

if (e.value.length < 15 || e.value.length > 18 || pattern.test(e.value) == false) {

 

e.errorText = "必须输入15~18位数字";

 

e.isValid = false;

 

}

 

}

 

}

 

 

 

////////////////////////////////////

 

/* 是否英文 */

 

function isEnglish(v) {

 

var re = new RegExp("^[a-zA-Z\_]+$");

 

if (re.test(v)) return true;

 

return false;

 

}

 

 

 

/* 是否英文+数字 */

 

function isEnglishAndNumber(v) {

 

 

 

var re = new RegExp("^[0-9a-zA-Z\_]+$");

 

if (re.test(v)) return true;

 

return false;

 

}

 

 

 

/* 是否汉字 */

 

function isChinese(v) {

 

var re = new RegExp("^[\u4e00-\u9fa5]+$");

 

if (re.test(v)) return true;

 

return false;

 

}

 

 

 

/*自定义vtype*/

 

mini.VTypes["englishErrorText"] = "请输入英文";

 

mini.VTypes["english"] = function (v) {

 

var re = new RegExp("^[a-zA-Z\_]+$");

 

if (re.test(v)) return true;

 

return false;

 

}

 

 

 

</script>

 

 

 

<div class="description">

 

<h3>Description</h3>

 

<p>

 

 

 

</p>

 

</div>

 

</body>

 

</html>

 

----------------------------------

<script type="text/javascript">

$(function(){

$.ajax({

url: 'com.qd.rols.rols.highcharts.getJsonCLand.biz.ext',

type:'POST',

async:false,

        cache:false,

        contentType:'json',

success:function(data)

 {

    var json = nui.encode(data);  //序列化成JSON,数组对象转为字符串

    var j=nui.decode(json);  ////反序列化成对象,转为数组对象

            alert(j[0].name);

 }

});

});

</script>

。。。。。。。。。。。。。。。。。。。。。。。。。。

代码模版:

 

$.ajax({

             type: "POST",

             url: "/login",

             contentType: 'application/x-www-form-urlencoded;charset=utf-8',

             data: {username:$("#username").val(), password:$("#password").val()},

             dataType: "json",

             success: function(data){

                         console.log(data);

                      },

             error:function(e){

                         console.log(e);

             }

         });

以下内容转载:http://www.w3school.com.cn/jquery/ajax_ajax.asp

 

参数

 

options

 

类型:Object

 

可选。AJAX 请求设置。所有选项都是可选的。

 

async

 

类型:Boolean

 

默认值: true。默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。

 

注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。

 

beforeSend(XHR)

 

类型:Function

 

发送请求前可修改 XMLHttpRequest 对象的函数,如添加自定义 HTTP 头。

 

XMLHttpRequest 对象是唯一的参数。

 

这是一个 Ajax 事件。如果返回 false 可以取消本次 ajax 请求。

 

cache

 

类型:Boolean

 

默认值: true,dataType 为 script 和 jsonp 时默认为 false。设置为 false 将不缓存此页面。

 

jQuery 1.2 新功能。

 

complete(XHR, TS)

 

类型:Function

 

请求完成后回调函数 (请求成功或失败之后均调用)。

 

参数: XMLHttpRequest 对象和一个描述请求类型的字符串。

 

这是一个 Ajax 事件。

 

contentType

 

类型:String

 

默认值: "application/x-www-form-urlencoded"。发送信息至服务器时内容编码类型。

 

默认值适合大多数情况。如果你明确地传递了一个 content-type 给 $.ajax() 那么它必定会发送给服务器(即使没有数据要发送)。

 

context

 

类型:Object

 

这个对象用于设置 Ajax 相关回调函数的上下文。也就是说,让回调函数内 this 指向这个对象(如果不设定这个参数,那么 this 就指向调用本次 AJAX 请求时传递的 options 参数)。比如指定一个 DOM 元素作为 context 参数,这样就设置了 success 回调函数的上下文为这个 DOM 元素。

 

就像这样:

 

$.ajax({ url: "test.html", context: document.body, success: function(){

        $(this).addClass("done");

      }});

data

 

类型:String

 

发送到服务器的数据。将自动转换为请求字符串格式。GET 请求中将附加在 URL 后。查看 processData 选项说明以禁止此自动转换。必须为 Key/Value 格式。如果为数组,jQuery 将自动为不同值对应同一个名称。如 {foo:["bar1", "bar2"]} 转换为 '&foo=bar1&foo=bar2'。

 

dataFilter

 

类型:Function

 

给 Ajax 返回的原始数据的进行预处理的函数。提供 data 和 type 两个参数:data 是 Ajax 返回的原始数据,type 是调用 jQuery.ajax 时提供的 dataType 参数。函数返回的值将由 jQuery 进一步处理。

 

dataType

 

类型:String

 

预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息来智能判断,比如 XML MIME 类型就被识别为 XML。在 1.4 中,JSON 就会生成一个 JavaScript 对象,而 script 则会执行这个脚本。随后服务器端返回的数据会根据这个值解析后,传递给回调函数。可用值:

 

"xml": 返回 XML 文档,可用 jQuery 处理。

 

"html": 返回纯文本 HTML 信息;包含的 script 标签会在插入 dom 时执行。

 

"script": 返回纯文本 JavaScript 代码。不会自动缓存结果。除非设置了 "cache" 参数。注意:在远程请求时(不在同一个域下),所有 POST 请求都将转为 GET 请求。(因为将使用 DOM 的 script标签来加载)

 

"json": 返回 JSON 数据 。

 

"jsonp": JSONP 格式。使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。

 

"text": 返回纯文本字符串

 

error

 

类型:Function

 

默认值: 自动判断 (xml 或 html)。请求失败时调用此函数。

 

有以下三个参数:XMLHttpRequest 对象、错误信息、(可选)捕获的异常对象。

 

如果发生了错误,错误信息(第二个参数)除了得到 null 之外,还可能是 "timeout", "error", "notmodified" 和 "parsererror"。

 

这是一个 Ajax 事件。

 

global

 

类型:Boolean

 

是否触发全局 AJAX 事件。默认值: true。设置为 false 将不会触发全局 AJAX 事件,如 ajaxStart 或 ajaxStop 可用于控制不同的 Ajax 事件。

 

ifModified

 

类型:Boolean

 

仅在服务器数据改变时获取新数据。默认值: false。使用 HTTP 包 Last-Modified 头信息判断。在 jQuery 1.4 中,它也会检查服务器指定的 'etag' 来确定数据没有被修改过。

 

jsonp

 

类型:String

 

在一个 jsonp 请求中重写回调函数的名字。这个值用来替代在 "callback=?" 这种 GET 或 POST 请求中 URL 参数里的 "callback" 部分,比如 {jsonp:'onJsonPLoad'} 会导致将 "onJsonPLoad=?" 传给服务器。

 

jsonpCallback

 

类型:String

 

为 jsonp 请求指定一个回调函数名。这个值将用来取代 jQuery 自动生成的随机函数名。这主要用来让 jQuery 生成度独特的函数名,这样管理请求更容易,也能方便地提供回调函数和错误处理。你也可以在想让浏览器缓存 GET 请求的时候,指定这个回调函数名。

 

password

 

类型:String

 

用于响应 HTTP 访问认证请求的密码

 

processData

 

类型:Boolean

 

默认值: true。默认情况下,通过data选项传递进来的数据,如果是一个对象(技术上讲只要不是字符串),都会处理转化成一个查询字符串,以配合默认内容类型 "application/x-www-form-urlencoded"。如果要发送 DOM 树信息或其它不希望转换的信息,请设置为 false。

 

scriptCharset

 

类型:String

 

只有当请求时 dataType 为 "jsonp" 或 "script",并且 type 是 "GET" 才会用于强制修改 charset。通常只在本地和远程的内容编码不同时使用。

 

success

 

类型:Function

 

请求成功后的回调函数。

 

参数:由服务器返回,并根据 dataType 参数进行处理后的数据;描述状态的字符串。

 

这是一个 Ajax 事件。

 

traditional

 

类型:Boolean

 

如果你想要用传统的方式来序列化数据,那么就设置为 true。请参考工具分类下面的 jQuery.param 方法。

 

timeout

 

类型:Number

 

设置请求超时时间(毫秒)。此设置将覆盖全局设置。

 

type

 

类型:String

 

默认值: "GET")。请求方式 ("POST" 或 "GET"), 默认为 "GET"。注意:其它 HTTP 请求方法,如 PUT 和 DELETE 也可以使用,但仅部分浏览器支持。

 

url

 

类型:String

 

默认值: 当前页地址。发送请求的地址。

 

username

 

类型:String

 

用于响应 HTTP 访问认证请求的用户名。

 

xhr

 

类型:Function

 

需要返回一个 XMLHttpRequest 对象。默认在 IE 下是 ActiveXObject 而其他情况下是 XMLHttpRequest 。用于重写或者提供一个增强的 XMLHttpRequest 对象。这个参数在 jQuery 1.3 以前不可用。

 

回调函数

 

如果要处理 $.ajax() 得到的数据,则需要使用回调函数:beforeSend、error、dataFilter、success、complete。

 

beforeSend

 

在发送请求之前调用,并且传入一个 XMLHttpRequest 作为参数。

 

error

 

在请求出错时调用。传入 XMLHttpRequest 对象,描述错误类型的字符串以及一个异常对象(如果有的话)

 

dataFilter

 

在请求成功之后调用。传入返回的数据以及 "dataType" 参数的值。并且必须返回新的数据(可能是处理过的)传递给 success 回调函数。

 

success

 

当请求之后调用。传入返回后的数据,以及包含成功代码的字符串。

 

complete

 

当请求完成之后调用这个函数,无论成功或失败。传入 XMLHttpRequest 对象,以及一个包含成功或错误代码的字符串。

 

数据类型

 

$.ajax() 函数依赖服务器提供的信息来处理返回的数据。如果服务器报告说返回的数据是 XML,那么返回的结果就可以用普通的 XML 方法或者 jQuery 的选择器来遍历。如果见得到其他类型,比如 HTML,则数据就以文本形式来对待。

 

通过 dataType 选项还可以指定其他不同数据处理方式。除了单纯的 XML,还可以指定 html、json、jsonp、script 或者 text。

 

其中,text 和 xml 类型返回的数据不会经过处理。数据仅仅简单的将 XMLHttpRequest 的 responseText 或 responseHTML 属性传递给 success 回调函数。

 

注意:我们必须确保网页服务器报告的 MIME 类型与我们选择的 dataType 所匹配。比如说,XML的话,服务器端就必须声明 text/xml 或者 application/xml 来获得一致的结果。

 

如果指定为 html 类型,任何内嵌的 JavaScript 都会在 HTML 作为一个字符串返回之前执行。类似地,指定 script 类型的话,也会先执行服务器端生成 JavaScript,然后再把脚本作为一个文本数据返回。

 

如果指定为 json 类型,则会把获取到的数据作为一个 JavaScript 对象来解析,并且把构建好的对象作为结果返回。为了实现这个目的,它首先尝试使用 JSON.parse()。如果浏览器不支持,则使用一个函数来构建。

 

JSON 数据是一种能很方便通过 JavaScript 解析的结构化数据。如果获取的数据文件存放在远程服务器上(域名不同,也就是跨域获取数据),则需要使用 jsonp 类型。使用这种类型的话,会创建一个查询字符串参数 callback=? ,这个参数会加在请求的 URL 后面。服务器端应当在 JSON 数据前加上回调函数名,以便完成一个有效的 JSONP 请求。如果要指定回调函数的参数名来取代默认的 callback,可以通过设置 $.ajax() 的 jsonp 参数。

 

注意:JSONP 是 JSON 格式的扩展。它要求一些服务器端的代码来检测并处理查询字符串参数。

 

如果指定了 script 或者 jsonp 类型,那么当从服务器接收到数据时,实际上是用了 <script> 标签而不是 XMLHttpRequest 对象。这种情况下,$.ajax() 不再返回一个 XMLHttpRequest 对象,并且也不会传递事件处理函数,比如 beforeSend。

 

发送数据到服务器

 

默认情况下,Ajax 请求使用 GET 方法。如果要使用 POST 方法,可以设定 type 参数值。这个选项也会影响 data 选项中的内容如何发送到服务器。

 

data 选项既可以包含一个查询字符串,比如 key1=value1&key2=value2 ,也可以是一个映射,比如 {key1: 'value1', key2: 'value2'} 。如果使用了后者的形式,则数据再发送器会被转换成查询字符串。这个处理过程也可以通过设置 processData 选项为 false 来回避。如果我们希望发送一个 XML 对象给服务器时,这种处理可能并不合适。并且在这种情况下,我们也应当改变 contentType 选项的值,用其他合适的 MIME 类型来取代默认的 application/x-www-form-urlencoded 。

 

高级选项

 

global 选项用于阻止响应注册的回调函数,比如 .ajaxSend,或者 ajaxError,以及类似的方法。这在有些时候很有用,比如发送的请求非常频繁且简短的时候,就可以在 ajaxSend 里禁用这个。

 

如果服务器需要 HTTP 认证,可以使用用户名和密码可以通过 username 和 password 选项来设置。

 

Ajax 请求是限时的,所以错误警告被捕获并处理后,可以用来提升用户体验。请求超时这个参数通常就保留其默认值,要不就通过 jQuery.ajaxSetup 来全局设定,很少为特定的请求重新设置 timeout 选项。

 

默认情况下,请求总会被发出去,但浏览器有可能从它的缓存中调取数据。要禁止使用缓存的结果,可以设置 cache 参数为 false。如果希望判断数据自从上次请求后没有更改过就报告出错的话,可以设置 ifModified 为 true。

 

scriptCharset 允许给 <script> 标签的请求设定一个特定的字符集,用于 script 或者 jsonp 类似的数据。当脚本和页面字符集不同时,这特别好用。

 

Ajax 的第一个字母是 asynchronous 的开头字母,这意味着所有的操作都是并行的,完成的顺序没有前后关系。$.ajax() 的 async 参数总是设置成true,这标志着在请求开始后,其他代码依然能够执行。强烈不建议把这个选项设置成 false,这意味着所有的请求都不再是异步的了,这也会导致浏览器被锁死。

 

$.ajax 函数返回它创建的 XMLHttpRequest 对象。通常 jQuery 只在内部处理并创建这个对象,但用户也可以通过 xhr 选项来传递一个自己创建的 xhr 对象。返回的对象通常已经被丢弃了,但依然提供一个底层接口来观察和操控请求。比如说,调用对象上的 .abort() 可以在请求完成前挂起请求。

---------------------

作者:蒙蒙的林先生

来源:CSDN

原文:https://blog.csdn.net/lyhkmm/article/details/78259780

版权声明:本文为博主原创文章,转载请附上博文链接!

 

 

一分钟学会什么是Ajax及Ajax请求的五个步骤

得先知道后台接口给ajax访问(接口URl和传入接口的参数及参数类型),知道访问之后返回的数据类型,有哪些数据。

选择异步请求的方式,常用的有三种,如$.ajax()、$.post()、$.get()。

其中$.ajax允许get/post两种请求方式,$.get()只允许get请求,$.post()只允许post请求方式。

异步请求所需要的常用要素:

a、url (访问url)   b、dataType(数据传输方式)   c、success成功之后的回调函数

$.ajax使用示范代码(由于异步请求的参数较多,实例只是常用参数,下同)。

设接口url

var url='/test/test.do';   //下面的实例代码都用此访问接口url

$.ajax({

url:url,

dataType:'text',

success: function(data){

(请求成功之后的前端处理代码)

}

});

$.post使用示范代码:

$.post(url, { name: "John", time: "2pm" },   function(data){

alert("Data Loaded: " + data);

},'text');

$.get使用实例代码:

$.get(url, { name: "John", time: "2pm" },  function(data){

alert("Data Loaded: " + data);

});

看,jQuery异步请求简单吧。学会这三种方式做前后端交互基本就够用了。

-----------------------------------------------------------

bug修改:

Bug1:

修改方式:

去改页面的 input页面中:将最小值修改为0

 

Bug2:

 

修改方式:

在视图view查看中 修改

将refreshFjList( , , ‘faluse’) 改为true

 

在查看流程中 修改

 

Bug3:

修改方式:

 

 

Bug4:

关于默认:

我的思路:找到一个有默认的,对比代码,自己修改:

有默认的输入:

没有的:

代码对比:

修改方式:

  1. 找到网页源代码:

没有结果。。。。。

百度一下:我添加了一个value属性

去代码下面找到获取当前用户名

  1. 。。。

 

 

Bug5:

 

找到类似 寻找差别:

失败,请教大哥

步骤如下:

 按f12 打开console 然后点击表单

看console中的错误提示

如下:

错在这句话: 这不是一个函数

So 回到后台,找那个函数:

双击selectOrg,查找

找到函数:

 

弹框有问题,所以定位到代码:

找到这个.jsp文件

 

发现函数名写错:

 

GetData()   问题代码中写的 getdata()

 

Bug6:

同上 调用函数 getData() GetData()

 

Bug7:

测试几组,页面可以关闭。没找到该问题。

 

数据代入:当前表的数据,需要从其他子表代入进来。

Bug1:

 

打开源码:

 

后修改:

 --------------------------0622

一、关于input标签中的enabled和allowInput

关于input 标签  enable 和 allowInput的区别:

  1. 编制人是enable=false;
  2. 编制日期是allowInput=false

 

看前台表格:

二者都修改不了,一个灰色,一个黑色。

 

试一下 把编制人的enabled改成true:

编制人 则可以修改了

 

试一下吧编制人的 allowInput改成false

看前台:

编制人为黑色实体 不可修改

 

 

再次试一下编制日期:

在后台修改代码:将allowInput 改成 enabled

去前台查看结果:

编制日期变为灰色,并且不可以修改。点后边按钮不可用。

 

改回去:将enabled 改成allowInput

前台结果:黑色,不可以输入,但是可以点击右边按钮去修改。

 

 

所以得出结论:一般日期这类的又下拉框的用allowInput

 

文本框这类,使其内容不可以修改:用enabled

 

 

普元 NUI框架使用经验积累

1.两种方式获取数据

  <div id="grid_0" class="nui-datagrid personnel-content" 
    style="width:100%;height:200px;"
    url="请求数据接口"
    dataField="数据源名称"
    pageSize="10"
    showPageInfo="true"
    showPageIndex="true"
    showPager="false"//是否启动分页
    oncellvalidation="onCellValidation"    onLoad = "onLoad">
    <div property="columns">
        <div type="checkcolumn"></div> //复选框实现全选操作
        <div field="ordernumber" vtype="required" allowSort="true" align="center" headerAlign="center">
                            订单编号<font color="red">*</font>
                          <input class="nui-textbox" enabled="true" name="" property="editor" οnblur="ONblurs(this)"/>
              </div>
              <div field="ordertime"  dateFormat="yyyy-MM-dd HH:MM:ss" headerAlign="center" allowSort="true" >
            下单时间 
      </div>
    </div>
 </div>

onCellValidation函数是提交前对整个表单进行校验
field="ordernumber" field对应接口中数据的字段名
vtype = "required" 对应项是必填项
dateFormat="yyyy-MM-dd HH:MM:ss" 24小时展示方式
dateFormat="yyyy-MM-dd hh:mm:ss" 12小时展示方式
页面加载完要调用一下
nui.parse();//nui框架进行编译
var grid = nui.get("grid_0");
grid.load();//table
进行数据载入
var grid_data = grid.getData();//获取table中全部数据
var grid_data = grid.getSelectData();//获取table中选中的数据
//校验方法
function onCellValidation(e){
if(e.field =="ordernumber"){//
自定义校验字段规则
var str=e.value;
if(
.trim(str).length>20){
e.errorText="
订单编号不能超过20位!";
e.isValid = false;
return false;
}
}
}

function onLoad(){//重加载函数可以对数据进行过滤,修改默认展示样式
var grid = nui.get("grid_0");
var _data = grid.getData();
$.each(_data,function(index,item){
item.invoicenumber = (item.invoicenumber == 'null')?'':item.invoicenumber;

});
grid.doUpdate();

}

2.第二种方式通过逻辑流把数据放在隐藏域中
nui.parse();
grid = nui.get("grid_4");
var json = $id("str1").value;//
隐藏域值
if (grid != undefined) {
data2 = nui.decode(json);
grid.setData(data2);//
table赋值
}

关于SVN

SVNSubversion的简称,是一个开放源代码的版本控制系统,相较于RCSCVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。[1]

非纯技术开发公司更倾向于svn
1.服务器公司统一控制管理
2.安全机制, 不会每个人都拷贝一份, 可以对组员限制, 也可以分配不同组
3.团队合作开发起来传递的数据量不会过大, git因为都是镜像, 如果有个美工传个500mb的psd, 不相关的人员也要去下载, 很浪费流量和更新时间
4.subversion感觉搭建非常简单支持https, 可以外部网络访问, 可以让员工在家办公, 也不用担心传递数据的流量(好邪恶)
5.每个人的电脑大小不一定能装下特别大的项目, 对于svn来讲, 公司配备一个足够大的服务器硬盘就好了, 而且哪个项目完成, 直接删掉本地目录就好, 完全没有保留的必要
6.网游公司, 广告公司这些需要大量媒体设计混合到程序的项目中, 很需要svn这样的服务器.
7.svn相对于git分支确实弱爆了, 但是并不能通过鄙视svn就能把所有人的习惯改过来.


git在这方面来讲更倾向于开源和纯代码开发


 

 

关于MiniUI 要学习的东西。看懂这些,就可以更快的修改bug,进而上手开发写程序。

--------------0624笔记

 

标记为合并:别人改了,我没改,我要标记为合并。有方格的

 

更新:我改了别人也改了,没有方格,就用更新。

-------------0708工作

今天一下午,就解决了一个问题:

项目中,获取input标签中的内容,在全台页面没有点击保存的情况下,获取该值。

不知道为什么,只有第一种可以获取。

网上查了很多:

也没解决。。。。。

 

发布了89 篇原创文章 · 获赞 68 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/zDavid_2018/article/details/95938552