详细解析思路<html> <head> <title> New Document </title> </head> <body> <form method="POST" action="../0001/success.asp" name=form > <textarea cols="45" name="memo" rows="8" wrap="on" class="editbox2" onKeyDown="textCounter(this.form.memo,this.form.remLen,160);" onKeyUp="textCounter(this.form.memo,this.form.remLen,160);"></textarea> <br> 共可输入160字,还剩 <input readonly type=text name=remLen size=3 maxlength=3 value="160" class=editbox1> 字。 <br> </form> </body> </html> <script language="JavaScript"> function textCounter(field, countfield, maxlimit) { if (field.value.length > maxlimit) field.value = field.value.substring(0,maxlimit); else countfield.value = maxlimit - field.value.length; } </script>详细解析思路
时间: 2023-07-14 10:13:06 浏览: 75
这是一段 HTML 代码,表示一个文本输入框和一个字数统计器。当用户在输入框中输入文字时,JavaScript 代码会监测输入框的内容长度,如果超过了 160 个字符,JavaScript 代码会截断多余的字符。同时,页面上会显示一个字数统计器,用于提示用户还可以输入多少字符。该代码可以用于限制用户在输入框中输入的字符数量,比如用于微博、评论等场景。
相关问题
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>创建菜单</title> </head> <body> <form action="www.4399.com/" method="post"> 账号 <input type="text" name="yikaishishabi" /> <br /> <br /> 密码 <input type="password" name="123456" /> <br /> <br /> <input type="submit" value="登录" /> <input type="reset" /> </form> </body> </html>帮我优化一下代码
好的,以下是我对这段代码的优化建议:
1. 在表单中添加一个 id 属性,以便在 JavaScript 中更方便地访问它。
2. 在文本框和密码框的前面添加标签,以提高表单的可读性。
3. 在提交按钮和重置按钮之间添加一个空格,以提高按钮的可读性。
4. 将表单的 method 属性设置为 POST,并使用相对路径或绝对路径作为 action 属性的值(不要忘记添加协议部分)。
5. 在表单的结束标签之前添加一个 JavaScript 脚本块,以便在表单提交之前验证用户输入。例如,可以检查用户名和密码是否为空,或者是否符合某些规则。
6. 在表单提交之前,禁用提交按钮,以避免多次提交表单。
综上所述,下面是优化后的代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>创建菜单</title>
</head>
<body>
<form id="login-form" action="http://www.4399.com/" method="post">
<label for="username">账号:</label>
<input type="text" id="username" name="username" />
<br />
<br />
<label for="password">密码:</label>
<input type="password" id="password" name="password" />
<br />
<br />
<input type="submit" value="登录" id="submit-btn" />
<input type="reset" />
</form>
<script>
var form = document.getElementById('login-form');
var usernameInput = document.getElementById('username');
var passwordInput = document.getElementById('password');
var submitBtn = document.getElementById('submit-btn');
form.addEventListener('submit', function(event) {
// 禁用提交按钮
submitBtn.disabled = true;
// 检查用户名和密码是否为空
if (usernameInput.value.trim() === '' || passwordInput.value === '') {
alert('用户名和密码不能为空!');
event.preventDefault();
submitBtn.disabled = false;
}
});
</script>
</body>
</html>
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>信息填写</title> <script> window.onload = function() { var oBtn = document.getElementById("btn") oBtn.onclick = function () { alert("提交成功"); }; } </script> </head> <body> <h1>信息填写</h1> <form method="post"> 姓名:<input type="text" /><br /> <br /> 账号:<input type="text" /><br /> <br /> 密码:<input type="password" /> <br /> <br /> <form method="post"> 性别: <input type="radio" name="gender" value="男" />男 <input type="radio" name="gender" value="女" />女 </form> <br /> <select> <option>HTML</option> <option>CSS</option> <option>jquery</option> <option>javascript</option> <option>vue.js</option> </select> <br /> <br /> <input Id="btn" type="button" value="提交" /> </body> </html> 请改进这段代码
这段代码有一些问题,我来逐个指出并提供改进的方案:
1. 没有为表单元素设置name属性,导致表单提交时无法获取表单数据。因此,需要给每一个表单元素都设置name属性,例如:
```html
<input type="text" name="name">
```
2. 在性别选项中,使用了一个嵌套的form元素,这是不合法的HTML结构。应该将性别选项用label元素包裹,并为每个选项设置id属性,然后在label元素中使用for属性指向该选项的id,例如:
```html
<label for="male"><input type="radio" id="male" name="gender" value="男">男</label>
<label for="female"><input type="radio" id="female" name="gender" value="女">女</label>
```
3. select元素没有设置name属性,也无法选择默认选项。应该给select元素设置name属性,并在其中加入一个默认选项(可以使用disabled和selected属性来禁止该选项被选中),例如:
```html
<select name="language">
<option disabled selected>请选择语言</option>
<option>HTML</option>
<option>CSS</option>
<option>jquery</option>
<option>javascript</option>
<option>vue.js</option>
</select>
```
4. input元素的id属性应该为小写字母。
下面是改进后的代码:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>信息填写</title>
<script>
window.onload = function() {
var oBtn = document.getElementById("btn");
oBtn.onclick = function () {
alert("提交成功");
};
}
</script>
</head>
<body>
<h1>信息填写</h1>
<form method="post">
姓名:<input type="text" name="name"><br>
<br>
账号:<input type="text" name="account"><br>
<br>
密码:<input type="password" name="password"><br>
<br>
<label for="male"><input type="radio" id="male" name="gender" value="男">男</label>
<label for="female"><input type="radio" id="female" name="gender" value="女">女</label><br>
<br>
<select name="language">
<option disabled selected>请选择语言</option>
<option>HTML</option>
<option>CSS</option>
<option>jquery</option>
<option>javascript</option>
<option>vue.js</option>
</select><br>
<br>
<input id="btn" type="button" value="提交">
</form>
</body>
</html>
```
阅读全文