请求帮助:为表格展开功能添加邮箱+密码双重验证条件
修改后的代码实现
没问题,我帮你调整代码,实现必须同时输入邮箱和密码的验证逻辑,并且查询时同时匹配这两个条件。下面是修改后的完整代码:
import wixData from 'wix-data'; $w.onReady(function() { // 页面加载时默认折叠表格 $w("#table1").collapse(); }); export function searchButton_onClick(event) { // 获取邮箱和密码输入框的值,去除首尾空格 const emailInput = $w('#input1').value.trim(); // 请根据实际邮箱输入框ID修改 const passwordInput = $w('#input2').value.trim(); // 第一步:验证输入完整性 if (!emailInput || !passwordInput) { // 有未填写项时提示用户,终止后续逻辑 console.log('请同时填写邮箱和密码'); // 你也可以在页面添加提示文本,比如:$w('#tipText').text = '请同时输入邮箱和密码'; return; } // 第二步:执行双条件查询 wixData.query('Mipropriedad') .contains('email', emailInput) // 请根据数据库中邮箱字段名修改 .contains('contrasena', passwordInput) .find() .then(queryResult => { if (queryResult.items.length > 0) { // 查询到匹配结果,展开表格并加载数据 $w("#table1").expand(); $w('#table1').rows = queryResult.items; } else { // 无匹配结果,折叠表格并提示 $w("#table1").collapse(); console.log('邮箱或密码不正确'); // 同样可以添加页面提示:$w('#tipText').text = '邮箱或密码有误,请重试'; } }) .catch(error => { console.error('查询过程出错:', error); }); }
关键修改说明:
- 输入验证:新增了非空检查,确保用户必须同时填写邮箱和密码才会触发查询,避免无效请求。
- 双条件查询:在
wixData.query中链式调用两个.contains(),让查询同时匹配邮箱和密码字段。如果需要精确匹配(而非包含匹配),可以把.contains()替换成.eq(),这样只有输入内容和数据库字段完全一致时才会匹配。 - 结果优化:增加了查询结果为空的处理逻辑,折叠表格并给出反馈,提升用户体验。
- 注意事项:请根据你的实际场景修改输入框ID(比如邮箱输入框可能不是
input1)和数据库字段名(比如邮箱字段可能叫correo而非email)。
内容的提问来源于stack exchange,提问作者Gregory Hervo
相关产品推荐
相关产品推荐

