对于一些错误总结
今天编码遇到一个特别奇怪的问题 ,
1在用jsp中利用
<c:if test="${isShow=='true' }"> </if> 在这里要小心 在}这个后面不要与引号有距离。。因为他会把空格也当成具体内容放到test中导致if判断无法执行出现错误
2对于不可编辑信息向后台传输数据
提交表单需要将不可编辑的情况将数据传输到后台,可以在执行ajax时将不可编辑状态移除用removeAttr("disable"); 然后这样在后台就可以获得数据。
3在mybits中可能会将某个内容转换一下成字符串 可以用内容.toString()来转换。
4$("#status option[value='${conditions.status}']").attr("selected",true); 可以根据值来确定是否选中的状态,还有多选框也是类似的原理 多选款应该比单选框多了个内容判断的然后再给加var checkboxValue='${condition.productType }';
var checkboxValues=[];
checkboxValues=checkboxValue.split(",");
var location= document.getElementsByName("productType");
for(var i=0;i<location.length;i++){
for(var index=0;index<checkboxValues.length;index++){
var checkValue=location[i].value;
if(checkValue==checkboxValues[index]){
location[i].checked=true;
}
}
}
在这里多记录下因为由于ajax异步的原因加载dom时顺序会在dom加载完成后才执行那么可能在获取值时就会出现问题,解决方法 1可以在回调函数中完成所需要的操作或者 使用同步操作
$.ajax({
async:false 注意加上这个属性就可以了 }),但是同步可能会有问题 大家可以自己测试
5对于一些跟数据库打交道的数据校验 暂时了解的只有两种方法 首先是页面输入内容后离开输入框
.blur是焦点的离开 然后进行数据校验
$("#userPhone").blur(function(){
var userPhone=$("#userPhone").val();
var code = '0';
/** 验证用户输入的信息的有效性 **/
$.ajax({
type : "POST",
async : false,
url : "/manage.onigiri/activity/verifyUserphone",
data :{"userPhone":userPhone},
success : function(res){
code = res.code;
if(code == '0'){
$("#addText").html("<font color='red'>手机号无效请重新输入</font>");
}
else{
$("#addText").html("<font color='red'>手机号正确</font>");
}
},
error : function(msg){
alert("操作失败");
}
});
})
另外一中就是利用点击按钮后 进行数据校验 ,自我感觉 点击按钮后进行数据检验不符合实时性,因为如果输入的数据太多的话那么就会在点击按钮后检验出现错误 导致人工时间的浪费。
6在一些对单选框 想获得其单选框内容可以用var showStatus= $('input:radio:checked').val();来获得单选框的值 ,然后可以进行一些问题的处理
上一篇: linux中的远程登录服务(sshd)
下一篇: Mybatis使用篇总纲