大米互助

这是之前做的项目,要是总结恐怕就没有机会了,现在时间赶所以抓紧时间写一个吧,主要给自己看

大米互助三个form窗体,一个用来收集个人基本信息,一个用来填写公司信息(点击添加按钮弹出窗体,添加信息)一个用来上传图片(fastDFS);先分解地来说:

提示信息的显示

目前服务器坏了,从网上找了个截图,类似这样的效果,利用自定义属性data-options,输入框给出提示、如果格式不对 ,js提示invalidMessage的内容

<a style="margin-left:20px;">
	<label style="font-size:14;">身份证号:</label> 
	  <input id="phone_dlg" class="easyui-textbox" name='gid_number'
		value="<s:property value="model.gid_number"/>"
		data-options="prompt:'选填,或者前4位********后四位',
		validType:['number','length[4,11]','specialCharacter'],invalidMessage:'数字就行,最后四位或者全体11位成员'"
		style="width:250px;height:32px; ">
</a>
js:

<script type="text/javascript">
  
    $.extend($.fn.textbox.defaults.rules, {  
        number : {  
            validator : function(value, param) {  
                return /^[0-9]*$/.test(value);  
            },  
            message : "请输入数字"  
        },  
        chinese : {  
            validator : function(value, param) {  
                var reg = /^[\u4e00-\u9fa5]+$/i;  
                return reg.test(value);  
            },  
            message : "请输入中文"  
        },  
        checkLength: {  
            validator: function(value, param){  
                return param[0] >= get_length(value);  
            },  
            message: '请输入最大{0}位字符'  
        },  
        specialCharacter: {  
            validator: function(value, param){  
                var reg = new RegExp("[`~!#$^&*()=|{}':;'\\[\\]<>~!#¥……&*()——|{}【】‘;:”“'、?]");  
                return !reg.test(value);  
            },  
            message: '不允许输入特殊字符'  
        }
      })
    </script>

form表单submit

的时候有一些问题,记得开始怎么也提交不上,后来周坤大神热心帮忙:

document.fmCompany.action = "${pageContext.request.contextPath}/addCompany_saveCompanyInfo.action";
document.fmCompany.submit();
刚才上网也查了一些:

在form标签中添加Action(提交的地址)和method(post),且有一个submit按钮(<input type=’submit’>)就可以进行数据的提交,每一个input标签都需要有一个name属性,才能进行提交。

需要有name属性,这个和js还有JQuey的区别有关系;具体是什么记不清了,没有及时总结的坏处……

http://www.cnblogs.com/hanqishihu/p/5601328.html    http://www.jb51.net/article/39494.htm

也可以(配合下面的表单刷新的障眼法):

<form name="flowCardForm" action="${pageContext.request.contextPath}/addCompany_saveCompanyInfo.action">
 <input type="hidden" name="command" value="${query }">//隐藏属性
这样要有:sumbit按钮
<input name="btnQuery" type="submit" class="button1" id="btnQuery" value="查询">

form表单提交会刷新

同一个界面的其他都是都会丢失,多次解决无效我使用了模型驱动来回显与绑定数据(不是很好),后来找到了一个博客()利用iframe:

<iframe id="id_iframe" name="nm_iframe" style="display:none;"></iframe>
让iframe隐藏,我们的表单的target=其name,这样表单提交的时候刷新的是这个iframe(目测),提交了数据《一个都不少》

<form name="fmGraduator" id="fmGraduator" method="post"
				class="embed-responsive-item" target="nm_iframe"
				enctype="multipart/form-data">


图片用到是fastDFS:

	<td align="center" bgColor="#f5fafe" class="ta_01"><textarea
			id="editor_id" name="gradutorPictureName"
			style="width:100%;height:300px;">									   
	  </textarea>
	</td>

<script type="text/javascript">
	  	$(function(){
	  		KindEditor.ready(function(K) {
	                var editor1 = K.create('#editor_id', {
	                    //自定义工具栏
	                	items:[
				         'multiimage'
						],
						uploadJson : 'adds_imgUpload.action', //图片上传Action
						allowImageRemote : false //取消网络图片上传
					});
	        });
	  	})
    </script>

获取:var pictureInfo=$("#editor_id").val();

拼接:

action 中 jsp中数据一些问题,所以需要截取拼接一下:

public  String  savePictureInfo() throws Exception {	

		String [] pictureNameStrings=gradutorPictureName.split("<");

		List<Picture> picturesForSaveList =new ArrayList<Picture>();

		for (int i = 1; i < pictureNameStrings.length; i++) {

			String pNameString="<";
			pNameString+=pictureNameStrings[i];
			String namesString=pNameString;
			
			//从session中获取个人的id
		    Map gradutorMap=ActionContext.getContext().getSession();
		    String graduotrString =(String)gradutorMap.get("GradutorId");
		    
		    if(graduotrString==null || graduotrString==""){
		    	picturesForSave.setGid("无");
		    	
		    }else {
		    	 picturesForSave.setGid(graduotrString);
		    	 
			}
		    
		    //从session中获取毕业生姓名
			String gNameString =(String)gradutorMap.get("gradutorName");
		    if(gNameString ==null || gNameString == ""){
		    	picturesForSave.setpName("无");
		    	
		    }else {
		    	picturesForSave.setpName(namesString);
			}
		   
			picturesForSave.setDelete_tap(0);

			picturesForSave.setSave_time(dateString);
			picturesForSave.setUpdate_time(dateString);
			//图片标识 为gid+毕业生姓名
			String tagString=graduotrString+gNameString;
			picturesForSave.setPtag(tagString); 

			picturesForSaveList.add(picturesForSave);

		}
         //保持到数据库
		this.addService.addPictureList(picturesForSaveList);
		
		return "saveSuccess";

	}

下面主体代码是一个个人基本信息的panel(内涵form表单)汉字部分是给出的提示,输入时消失

<div class="panel panel-htop"
		style="display: block; width: 94%;margin-left:45px;">

		<div class="panel-header" style="width: 94%;">
			<div class="panel-title"></div>
		</div>

		<div id="p" class="easyui-panel panel-body"
			style="padding: 10px; width: 95%; height: 350px;">

			<%--action="${ pageContext.request.contextPath }/adds_saveGradutorInfo.action"--%>

			<form name="fmGraduator" id="fmGraduator" method="post"
				class="embed-responsive-item" target="nm_iframe"
				enctype="multipart/form-data">

				<div style="margin-bottom:20px;margin-top:20px;">

					<label style="font-size:15;margin-right:14px;">毕业生的姓名:</label> <input
						class="easyui-textbox" id="username_dlg" required="true"
						name='gname' value="<s:property value="model.gname"/>"
						data-options="prompt:'同名:如王丹、请对应填写大小王丹',
		                    validType:['specialCharacter'],invalidMessage:'中文名就好,请不要输入特殊字符'"
						style="width:18%;height:32px;"> <label
						style="font-size:15;margin-left:44px;">学员所在期数:</label> <input
						class="easyui-textbox" id="ggrade" required="true" name='ggrade'
						value="<s:property value="model.ggrade"/>"
						data-options="prompt:'只写数字就好,如:12期的小伙伴写 12',
	                    validType:['number','specialCharacter'],invalidMessage:'只输入数字就好,如:12期输入 12,配合即默契'"
						style="width:20%;height:32px; ">

				</div>

				<div style="margin-bottom:20px;">

					<label style="font-size:14;margin-right:20px;">学员常用电话:</label> <input
						class="easyui-textbox" id="phone_dlg" name='gphone'
						required="true" value="<s:property value="model.gphone"/>"
						data-options="prompt:'常用电话就行',
		                       validType:['number','specialCharacter','length[11,11]'],invalidMessage:'11位的电话就行'"
						style="height:32px; width:200px;"> <label
						style="font-size:14;margin-left:44px;">学员常用邮箱:</label> <input
						class="easyui-textbox" name='gemail' id='gemail'
						value="<s:property value="model.gemail"/>" required="true"
						data-options="prompt:'常联系……',validType:['specialCharacter','email']"
						style="width:200px;height:32px; "> 
						
						<a style="margin-left:20px;">
							<label style="font-size:14;">身份证号:</label> <input
							id="phone_dlg" class="easyui-textbox" name='gid_number'
							value="<s:property value="model.gid_number"/>"
							data-options="prompt:'选填,或者前4位********后四位',
									 validType:['number','length[4,11]','specialCharacter'],invalidMessage:'数字就行,最后四位或者全体11位成员'"
							style="width:250px;height:32px; ">
						</a>

				</div>

				<div style="margin-top:20px;">

					<label style="font-size:14;margin-right:20px;">个人简介或寄语:</label> <input
						class="easyui-textbox" name='gintroduce'
						value="<s:property value="model.gintroduce"/>"
						data-options="prompt:'选填,自我介绍、自己的成长历程,对师弟师妹的建议、对大米时代 米老师想说的话',validType:['specialCharacter','textbox']"
						style="width:100%;height:130px;">
				</div>

				<div>
					<a class="easyui-linkbutton c6 l-btn l-btn-small"
						id="companyAddBtn" name="companyAddBtn"
						style="float:right;margin-right:20px;margin-bottom:10px;
						  margin-top:15px;width:160px;height:40px;display:none;"
						iconcls="icon-ok" onclick="showCompany()">2.点击添加公司信息<br />可复用</a>


					<a class="easyui-linkbutton c6 l-btn l-btn-small" id="personAddBtn"
						type="submit"
						style="float:right; margin-right:10px;margin-bottom:10px;margin-top:15px;width:150px;height:40px;"
						iconcls="icon-ok" onclick="savegradutor()">1.先保存信息</a>

				</div>
			</form>

		</div>

	</div>

最后写一个显示隐藏的

隐藏:style="display: block;"   style="display:none;" 显示;  $("#companyAddBtn").show(); 

form显示并设置标头$('#dlg').dialog('open').dialog('center').dialog('setTitle','添加公司信息');

关闭 $('#dlg').dialog('close');  ——js和jQuery并用


还有一个项目启动的时候tomcat控制台停到数据库连接部分不动了,上网查 也没有明确的解决方法,我清理垃圾、重启电脑问题时而解决时而还在,头大~后来问了杨钊,原来是数据库没有连接上的原因,の~~好吧


总结:

现在看来都是些简单的东西,有一段时间了,现在大概走一遍代码,忘了一些东西,记得解决问题的过程中遇到了一些问题,所以时间花的有点长,静下心/急于求成总是不好

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值