1、大摆庆功宴javascript
上一篇博文《大湿教我写程序(1)之菜单导航篇》中讲到了我撸码到晚上两点多,整出了一个还算是高端大气上档次的demo。半夜回到家里打算着能够好好睡上一个懒觉,到时候直接到客户那边跟老板汇合一块儿去演示。html
早上7点前端
“谁呀,大晚上的搞什么灰鸡,还让不让人睡了”刚在梦中与女神相会,关键时刻hello motor!的声音不停的响,我拿起电话回了句。java
“雷工,今天没办法呀,客户那边单子不小,这单作好了,之后咱们有的是合做机会,公司的将来就托付在你身上了。demo要好好作,我在你楼接你,牙也别刷了穿上衣服赶忙下来,咱去公司好好过一遍demo,等项目拿下来了,咱们一块儿去酒店摆庆功宴,好好庆祝一下。快点哈别磨蹭了,给你一分钟。我挂了。”jquery
嘟嘟嘟。。。。程序员
“XX,什么人!别的程序员说本身是IT民工,我TM是IT奴隶!!!”web
到了公司看了下demo基本没什么问题,其他无非就是教我些坑人的话,教我怎么忽悠客户。ajax
上午10点json
到了客户那边,通过我跟老黄的双簧表演demo居然顺利经过了。客户那边比较急着上项目,因而让我现场估算一下工时。服务器
“需求分析7天、需求确认3天.....这样一七得7、三七二11、四七二十8、五一劳动节、六一我过节。。。。我初步估算一下一共须要180我的天数”我说道。
“是的,您这个项目比较复杂,咱们要保证质量因此须要这么多人天数也是没办法的,没质量的软件咱们宁肯不作。”老黄一脸艰难的说。这时候我感受老黄在我内心的形象很是高大有这样的觉悟,以他的那颗黑得发紫的心和比城墙还厚的脸皮,他绝对能够成为下一个马化腾。
“人天数大家放心,我不会扣大家的,公司这么大不差大家这点钱,工期仍是有点长,这个咱们要再考虑一下。”对方项目经理。
“原来您担忧这点,那我如今就能够告诉您,以咱们公司的实力,1个月后交付项目,我从开发部中抽6名骨干来作。保质保量完成任务。”虽然我狠狠地在会议桌下面踩了老黄一脚,可他仍是在客户面前表了这样的态。
咱们毫无悬念地拿下了这个单子,回家的路上我问老黄:“黄总,咱们一共才两个开发的,我算了下跟大雄一块儿开发都得3个月,你打算要外包么?”
“外包个毛啊,本身会有开发的干吗把钱给别人赚。大雄那边的项目还没完,这个项目主要仍是得你顶着。你千万别跟我说要招人,公司要控制成本,这是个人方针”老黄道。
“这样的话我无法作了,明天我不想上班了”
“年轻人怎么能这样,这点困难就怕了,之后怎么成大事,下月给你加500块工资”
“这不是钱的问题,您每次都这样,咱们累的要死,项目没法按时交付客户没命的催,我受够了”
“下月给你加一千五,另外先把报表类的东西作出来,其它功能没出来能够从他们旧系统里拉数据,老板只看报表的,先稳住老板就行”老黄又一脸艰难的说。
“那我尽力吧,黄总,我真心不是由于钱的事跟您闹离职”
“好了,接下来咱们要争分夺秒了,你先下到沙县小吃那里给我带份炒面,你也打包回来吃”老黄说完丢下我就先走了
我擦,这TM就是庆功宴,去的原来是沙县大酒店呀!一份炒面也7块钱,钱还没给我呢。。。。
二、走向AV大道
吃完饭我就开工了,报表要先弄,看了下客户那边的需求,而后连到他们的服务器上看了一下,感受问题不是很大,由于SQL我仍是比较熟的,通常变态点的语句也都能写得出来。
通过一下午的整理SQL语句全弄好了,抓取出来的数据也没问题,接下来又要作前台页面了。像什么水晶报表之类的我确定是想都不想了,要付费的东西用上去了,被那个半桶子水的家伙看到后不但要臭骂一通还得从新来过。
当时demo的界面是这样的:
<script src="/Themes/Scripts/jquery-1.8.2.min.js"></script>
三、声明对图表插件的引用
<script src="../Themes/Scripts/Highcharts/highcharts.js"></script> <script src="../Themes/Scripts/Highcharts/theme/grid.js"></script>
4 、函数封装一下jquery调用Ajax调用后台处理程序方法。
/* 请求Ajax 带返回值 --------------------------------------------------*/ function getAjax(url, parm, callBack) { $.ajax({ type: 'post', dataType: "text", url: url, data: parm, cache: false, async: false, success: function (msg) { callBack(msg); } });
五、正式开始AV调用,指定后台处理程序地址,传入参数,将返回值绑定到报表便可,代码比较长这里就不贴出来。
六、在数据没有加载完成时加一个正加加载的小特效,加载完了再隐藏掉。别让用户感受界面假死
<div id="loading" onclick="Loading(false);"> <img src="../Themes/Images/loading.gif" style="padding-bottom: 4px; vertical-align: middle;" /> 正在处理,请稍待 </div>
运行一下试试,哦耶!没一点问题。
三、将AV事业发扬光大
OK,报表那块的东西基本处理得差很少,客户那边有很多资料是要用Excel导入进去的,常常会一次性导入不少个文件,若是用服务端控件确定用户体验很差。看来仍是得采用AV技术来上传比较好。
“大雄。。。”算了,大湿双眼紧盯屏幕,看来又在研习这门技术更深层次的内功心法了,算了不打扰他了,本身动手吧。
首先我要感谢的是谷沟,google一下发现.net的ashx能够上传文件,这个东西上传文件很方便,单个的文件能够上传,也能够指定一个文件夹上传全部文件。太好了,感谢asmx的妹妹ashx,那么我就依葫芦画瓢按照上一节中的方法来处理上传,只有如下两点不一样:
一、Ajax提交
<script type="text/javascript"> function upload(){ var path = document.getElementById("File1").value; var img = document.getElementById("img1"); if($.trim(path)==""){ alert("请选择要上传的文件或文件夹"); return; } $("#form1").ajaxSubmit({ success: function (str) { if(str!=null && str!="undefined"){ if (str == "1") {alert("上传成功");document.getElementById("img1").src="images/logo.jpg?"+new Date();/*上传后刷新图片*/} else if(str=="2"){alert("只能上传Excel格式的文件");} else if(str=="3"){alert("文件不能大于10M");} else if(str=="4"){alert("请选择要上传的文件");} else {alert('操做失败!');} } else alert('操做失败!'); }, error: function (error) {alert(error);}, url:'Handler.ashx', /*设置post提交到的页面*/ type: "post", /*设置表单以post方法提交*/ dataType: "text" /*设置返回值类型为文本*/ }); } </script>
二、服务器端接收到文件之后要进行后续处理。
F5以后,OK,彻底没问题,正常接收
“大雄,快来看,快来看,这个导入文件我也是用AV技术解决的,怎么样,还能够吧。”
“不错呀,你这个真的还不错,挺会触类旁通的,平时教学视频没白看呀”
“怎么样,离你的技术还差多远,大湿。”
“我哪能跟您比呀,您才是大湿,动手能力这么强,立刻要遇上神之手加滕老师了。”
“好了,昨晚上没睡好,今天折腾了一天不跟你瞎扯了,我先回家睡觉。”
“你先滚吧,明天双11,0点的时候我先买买东西。”
不是吧难道又要加班了?这时候老黄又打电话过来了。
“黄总,又加班呀!!你还想不想让我活了!”
“没,你今天好好休息下,我有有个事情交待下。。。”
“啥事您这么急?话都说不圆了,别急,有事您慢慢讲。”
“今天客户给我打了15万首付款,那张卡我开通了网银的,明天双11了,我如今在陪客户吃饭,你赶点紧,如今晚上9点了,我已经把支付宝、网银帐号发你QQ上了,你立刻乱输几回密码,都给锁上。别让那败家老娘们儿给我花了”
。。。
谨以此文献给像我同样的菜鸟,但愿你们能有所启发,大牛勿喷。
http://www.learun.cn 力软官网
http://www.learun.cn:8080 在线demo
若是你以为喜欢就帮我【推荐】一下吧,你的支持才是我能坚持写完这个系列文章的动力。