oninput(e){ var that=this that.data.identity=e.detail.value wx.request({ url: app.globalData.api +'/Student_GetInfoByIdCard', data:{ token:app.globalData.token, identity:that.data.identity }, method: 'POST', header: { 'content-type': 'application/json' }, success(res){ var r = JSON.parse(res.data.d) // console.log(r.JsonStr.data1) var data=r.JsonStr.data1 console.log(data) if(that.data.identity.length===18){ that.setData({ nation: data.nation, //民族 teacherphone: data.teacherphone, //指导老师手机号 teacher: data.teacher,//指导老师 name: data.name,//姓名 phone: data.phone,//手机号 gender:data.gender,//性别 nationality:data.nationality,//国籍 birthday:data.birthday_shorter,//生日 pinyinlist:data.pinyin//拼音 }) } } }) // console.log(e.detail.value) },如果身份证号长度小于18 所有信息都不显示代码
时间: 2024-02-14 08:33:08 浏览: 216
根据您提供的代码,我可以看出该程序是一个微信小程序,用于查询身份证号相关信息。当用户输入身份证号码时,会触发 `oninput` 函数,然后向后台发起请求获取相关信息,并通过 `setData` 方法更新页面显示。
而您的问题是,当输入的身份证号码长度小于18时,所有信息都不显示。这是因为代码中进行了条件判断,只有当输入的身份证号码长度为18时,才会更新页面显示。如果要让所有信息都显示,可以将 `if(that.data.identity.length===18)` 这行代码改成 `if(that.data.identity.length>0)`,这样无论输入的身份证号码长度是多少,都会更新页面显示。
相关问题
修改这段代码 身份证长度不满足18位不发送请求 oninput(e){ var that=this that.data.identity=e.detail.value if(that.data.identity<18)return; wx.request({ url: app.globalData.api +'/Student_GetInfoByIdCard', data:{ token:app.globalData.t
修改后的代码:
oninput(e){
var that = this;
that.data.identity = e.detail.value;
if(that.data.identity.length < 18) return;
wx.request({
url: app.globalData.api + '/Student_GetInfoByIdCard',
data: {
token: app.globalData.token,
identity: that.data.identity
},
success: function(res){
console.log(res.data);
},
fail: function(err){
console.log(err);
}
});
}
修改内容:在判断身份证号长度时,使用字符串长度进行判断,如果长度小于18就直接返回,不发送请求。同时,在发送请求时,将身份证号作为请求数据的一个参数传递。并且在请求成功或失败后,分别打印出返回的数据或错误信息。
阅读全文