最近在用pearadmin框架过程中,在编写添加学生信息页面时需要根据输入的身份证号检测信息是否存在,如果存在则禁用保存按钮,否则取消禁止。
html代码
<div class="layui-form-item"> <label class="layui-form-label">身份证号</label> <div class="layui-input-block"> <input type="text" name="sfzh" id="sfzh" lay-verify="required|identity|check_sfzh" lay-reqtext="请输入身份证号" autocomplete="off" placeholder="请输入身份证号" class="layui-input"> </div> </div>
JS代码
<script>
layui.use(['form', 'jquery'], function() {
let form = layui.form;
let $ = layui.jquery;
let apiurl ="http://192.168.23.254:801/";
$("#sfzh").keyup(function () {
var len = $(this).val().length;
var datas='{"sfzh":"'+$(this).val()+'"}';//构造json数据
if (len == 18) {
$.ajax({
type: "post",
url: apiurl+'ctl_add_student.fsp?proc=check',
async:true,//同步提交。不设置则默认异步,异步的话,最后执行ajax
data: datas,
datatype:'json',
contentType: 'application/json',
success: function(result) {
//console.log("success:")
//console.log(result);
oResult=JSON.parse(result)
//转为json对象
//console.log(oResult.rows);
//取从后端返回的记录数
if (oResult.rows==0){
//rows为查询到的记录数,为0表示没有,可以添加
//去除禁止样式
$('#preservation').removeClass("layui-btn-disabled");
//取消禁止
$('#preservation').attr("disabled",false);
layui.form.render();
}
else{
layer.msg(oResult.errmsg, {
icon: 2,
time: 5000
});
// 增加禁止样式
$('#preservation').addClass("layui-btn-disabled");
//禁止按钮
$('#preservation').attr("disabled",true);
layui.form.render();
//return false;
};
},
error: function() {
alert('请求失败');
return false;
}
});
}
else{
//去除禁止样式
$('#preservation').removeClass("layui-btn-disabled");
//取消禁止
$('#preservation').attr("disabled",false);
layui.form.render();
}
console.log(len);
}),
form.on('submit(user-save)', function(data) {
//console.log(data);
$.ajax({
url: apiurl+'ctl_add_student.fsp?proc=add',
async:false,//是否使用异步请求。默认为true。不设置则默认异步,异步的话,最后执行ajax
data: JSON.stringify(data.field),
dataType: 'json',
contentType: 'application/json',
type: 'post',
success: function(result) {
console.log(result);
if (result.errno == 0) {
// 添加成功用msg,这是ctl_add_student.prg中自定义的
layer.msg(result.msg, {
icon: 1,
time: 3000
},function(){
location.reload();//添加成功后刷新添加页面
});
} else {//添加失败,返回消息用errmsg,这是猫框中默认的
layer.msg(result.errmsg, {
icon: 2,
time: 5000
});
}
}
})
return false;
});
})
</script>
最新回复