<script> function login(event){ event.preventDefault() var dlzh=document.querySelector("#dlzh") var dlmm=document.querySelector("#dlmm") var brr=JSON.parse(localStorage.getItem("arr"))||[] var b=0 for(let i=0;i<brr.length;i++){ if([brri].name==dlzh.value&&brr[i].password==dlmm.value){ b=1 } } if(b==1){ alert("登陆成功") location.href="./index.html" }else{ alert("账号或密码错误") } } </script>解释代码
时间: 2024-04-25 11:26:34 浏览: 159
这段代码是一个 JavaScript 函数,用于处理表单的提交事件。它首先使用 `event.preventDefault()` 阻止表单默认的提交行为,然后通过 `document.querySelector()` 方法获取了两个输入框的 DOM 元素,分别是 id 为 "dlzh" 和 "dlmm" 的输入框。接着它从本地存储中获取了名为 "arr" 的数组,并用 `JSON.parse()` 方法将其解析为 JavaScript 对象,如果 "arr" 不存在,则默认返回一个空数组。然后它定义了一个变量 `b`,并将其初始值设为 0,用于记录是否找到了匹配的账号和密码。之后它使用 for 循环遍历了数组中的每一个对象,如果找到了一个账号名等于输入框中的账号名并且密码等于输入框中的密码的对象,就将变量 `b` 的值设为 1。最后它根据 `b` 的值弹出了不同的提示框,并将页面重定向到 "index.html" 页面。
相关问题
<script> function zc(event){ var zh=document.querySelector("#zczh") var mm=document.querySelector("#zcmm") var obj={} var a=0 obj.name=zh.value, obj.password=mm.value event.preventDefault() var arr=JSON.parse(localStorage.getItem("arr"))||[] for(let i=0;i<arr.length;i++){ if(arr[i].name==zh.value){ a=1 } } if(nan.checked==false&&nv.checked==false){ alert("请选择性别") return } if(zh.value==""||zcmm.value==""){ alert("账号或密码不能为空") return }else if(a==1){ alert("用户名已经被注册了") return } arr.push(obj) localStorage.setItem("arr",JSON.stringify(arr)) console.log(arr) alert("恭喜你注册成功") location.href="./index.html" } </script>解释代码
这段代码是一个 JavaScript 函数,用于注册账号。它首先获取输入框中的账号和密码,并将它们存储在一个 JavaScript 对象中。然后它从本地存储中获取一个名为 "arr" 的数组,并检查输入的用户名是否已经存在于该数组中。如果用户名已经存在,它会提示用户进行修改。如果没有选择性别,它会提示用户选择性别。如果用户名和密码输入框为空,它会提示用户进行填写。如果一切都符合要求,它会将新的用户对象添加到 "arr" 数组中,将该数组存储在本地存储中,然后跳转到首页。
<!DOCTYPE html><html><head> <title>Cart</title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"></head><body> <h1>Cart</h1> <table> <thead> <tr> <th>Product</th> <th>Quantity</th> </tr> </thead> <tbody id="cart"> </tbody> </table> <script> var cart = localStorage.getItem('cart'); if (cart) { cart = JSON.parse(cart); var cartTable = document.getElementById('cart'); for (var product in cart) { var row = document.createElement('tr'); var productCell = document.createElement('td'); productCell.textContent = product; var quantityCell = document.createElement('td'); quantityCell.textContent = cart[product]; row.appendChild(productCell); row.appendChild(quantityCell); cartTable.appendChild(row); } } else { alert('Your cart is empty'); } </script></body></html>
好的,以下是添加删除物品和更改物品数量的功能的代码示例,基于 JavaScript:
```html
<!DOCTYPE html>
<html>
<head>
<title>Cart</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<h1>Cart</h1>
<table>
<thead>
<tr>
<th>Product</th>
<th>Quantity</th>
<th>Action</th>
</tr>
</thead>
<tbody id="cart">
</tbody>
</table>
<form>
<label for="product">Product:</label>
<input type="text" id="product" name="product" required>
<label for="quantity">Quantity:</label>
<input type="number" id="quantity" name="quantity" required>
<button type="submit" id="add">Add to Cart</button>
</form>
<script>
var cart = localStorage.getItem('cart');
if (cart) {
cart = JSON.parse(cart);
var cartTable = document.getElementById('cart');
for (var product in cart) {
var row = document.createElement('tr');
var productCell = document.createElement('td');
productCell.textContent = product;
var quantityCell = document.createElement('td');
quantityCell.textContent = cart[product];
var actionCell = document.createElement('td');
var deleteButton = document.createElement('button');
deleteButton.textContent = 'Delete';
deleteButton.addEventListener('click', function(event) {
var product = event.target.parentNode.parentNode.querySelector('td:first-child').textContent;
delete cart[product];
localStorage.setItem('cart', JSON.stringify(cart));
event.target.parentNode.parentNode.remove();
});
var editButton = document.createElement('button');
editButton.textContent = 'Edit';
editButton.addEventListener('click', function(event) {
var product = event.target.parentNode.parentNode.querySelector('td:first-child').textContent;
var quantity = parseInt(prompt('Enter new quantity for ' + product + ':', cart[product]));
if (!isNaN(quantity) && quantity >= 0) {
cart[product] = quantity;
localStorage.setItem('cart', JSON.stringify(cart));
event.target.parentNode.parentNode.querySelector('td:nth-child(2)').textContent = quantity;
} else {
alert('Invalid quantity');
}
});
actionCell.appendChild(deleteButton);
actionCell.appendChild(editButton);
row.appendChild(productCell);
row.appendChild(quantityCell);
row.appendChild(actionCell);
cartTable.appendChild(row);
}
} else {
alert('Your cart is empty');
}
document.getElementById('add').addEventListener('click', function(event) {
event.preventDefault();
var product = document.getElementById('product').value;
var quantity = parseInt(document.getElementById('quantity').value);
if (product && !isNaN(quantity) && quantity >= 0) {
if (cart) {
if (cart[product]) {
cart[product] += quantity;
} else {
cart[product] = quantity;
}
} else {
cart = {};
cart[product] = quantity;
}
localStorage.setItem('cart', JSON.stringify(cart));
var cartTable = document.getElementById('cart');
var row = document.createElement('tr');
var productCell = document.createElement('td');
productCell.textContent = product;
var quantityCell = document.createElement('td');
quantityCell.textContent = cart[product];
var actionCell = document.createElement('td');
var deleteButton = document.createElement('button');
deleteButton.textContent = 'Delete';
deleteButton.addEventListener('click', function(event) {
var product = event.target.parentNode.parentNode.querySelector('td:first-child').textContent;
delete cart[product];
localStorage.setItem('cart', JSON.stringify(cart));
event.target.parentNode.parentNode.remove();
});
var editButton = document.createElement('button');
editButton.textContent = 'Edit';
editButton.addEventListener('click', function(event) {
var product = event.target.parentNode.parentNode.querySelector('td:first-child').textContent;
var quantity = parseInt(prompt('Enter new quantity for ' + product + ':', cart[product]));
if (!isNaN(quantity) && quantity >= 0) {
cart[product] = quantity;
localStorage.setItem('cart', JSON.stringify(cart));
event.target.parentNode.parentNode.querySelector('td:nth-child(2)').textContent = quantity;
} else {
alert('Invalid quantity');
}
});
actionCell.appendChild(deleteButton);
actionCell.appendChild(editButton);
row.appendChild(productCell);
row.appendChild(quantityCell);
row.appendChild(actionCell);
cartTable.appendChild(row);
} else {
alert('Invalid product or quantity');
}
});
</script>
</body>
</html>
```
这个代码添加了一个表单,用于添加新的产品和数量,并且在现有的表格中添加了一个“操作”列,其中包括删除和编辑按钮。删除按钮删除该行中的产品,并从 localStorage 中删除该产品的条目。编辑按钮提示用户输入新数量,然后更新该产品的数量和 localStorage 条目中的值。
阅读全文