验证并保存地址信息
在这一步中,你将学习如何验证地址信息并将新地址保存到地址列表中。
在 js/index.js 文件中找到 saveInfo() 函数。
此函数负责验证输入字段并保存新地址。
首先,它获取省份、城市、地址、标签、姓名和电话号码输入字段的值。
然后检查省份、地址、姓名或电话号码字段是否为空。如果这些必填字段中的任何一个为空,它将显示一个警告对话框。
如果所有必填字段都已填写,它将创建一个新的列表项元素 (<li>) 并用地址信息填充它。
新的地址列表项包括标签(基于所选标签)、完整地址(省份和城市)、地址以及姓名和电话号码。
最后,它将新的地址列表项追加到 .address-list 元素,并调用 back() 函数重定向到地址管理页面。
function saveInfo() {
var { value: provinceIdx, options: provinces } =
document.getElementById("param_province");
var { value: cityIdx, options: cities } =
document.getElementById("param_city");
var { value: address } = document.getElementById("param_address");
var { value: markId } = document.getElementById("param_mark");
var labelNodes = document.querySelectorAll(".mark a");
var label = labelNodes[markId].text;
var { value: name } = document.getElementById("param_name");
var { value: phone } = document.getElementById("param_phone");
if (provinceIdx === 0 || !address || !name || !phone) {
document.querySelector(".warning-dialog").style.display = "block";
return;
}
var addressListElement = document.querySelector(".address-list");
var newAddressElement = document.createElement("li");
newAddressElement.innerHTML = `
<div class="show-area">
<label class="school">${label}</label>
<span>${provinces[provinceIdx].text}${cities[cityIdx].text}</span>
</div>
<div class="show-address">
<span>${address}</span>
<a><img src="./images/edit.png" /></a>
</div>
<div class="show-info">
<span>${name}</span>
<span>${phone}</span>
</div>
`;
addressListElement.appendChild(newAddressElement);
back();
}
通过执行这些步骤,你已在项目中成功实现了“添加新地址”功能。恭喜!
最终页面效果应如下所示: