document.getelementbyid().innerhtml和document.getelementbyid().value的区别
时间: 2024-06-12 12:09:28 浏览: 189
document.getElementById().innerHTML 和 document.getElementById().value 的区别在于它们返回的值的类型和用途不同。
- document.getElementById().innerHTML 返回的是 HTML 元素的内部 HTML 内容,即元素包含的所有 HTML 标签和文本。这个属性可以用于获取和修改元素的内容,例如:
```javascript
var element = document.getElementById("myElement");
var htmlContent = element.innerHTML; // 获取元素的内部HTML内容
element.innerHTML = "新的内容"; // 修改元素的内部HTML内容
```
- document.getElementById().value 返回的是表单元素(如 input、select、textarea)的当前值。这个属性主要用于获取和设置表单元素的值,例如:
```javascript
var inputElement = document.getElementById("myInput");
var value = inputElement.value; // 获取输入框的值
inputElement.value = "新的值"; // 设置输入框的值
```
相关问题
function checkThis() { let userName = document.getElementById("userName").value; let userIdCard = document.getElementById("userIdCard").value; let nikeName = document.getElementById("nikeName").value; let userPassword = document.getElementById("userPassword").value; let userPhone = document.getElementById("userPhone").value; let rUserPassword = document.getElementById("rUserPassword").value; if (userName.trim() == null || userName.trim() == "") { document.getElementById("error").innerHTML = "姓名不能为空"; return false; }
这是一段 JavaScript 代码,其中定义了一个名为 checkThis 的函数。该函数的作用是检查用户输入的注册信息是否合法。在该函数中,通过使用 document.getElementById 获取了页面上对应的元素节点,其中包括用户的姓名、身份证号、昵称、密码、确认密码和手机号。接着,使用 trim() 方法去掉字符串两端的空格,然后对每个输入框进行非空校验,如果存在空值,则在页面上显示错误信息,并返回 false。如果所有输入框都不为空,则返回 true。在实际应用中,该函数可能会被用于前端表单校验。
优化这段代码function updateNumValue() { var numvalue4 = parseInt(document.getElementById("nummbe-value").value); var numpr = document.getElementById("numprice"); numpr.innerHTML = (34.99 * numvalue4); } var minus = document.querySelector(".nummbe #minus"); minus.onclick = function() { var numvalue4 = parseInt(document.getElementById("nummbe-value").value); numvalue4 = numvalue4 - 1; if (numvalue4 < 0) { numvalue4 = 0; } document.getElementById("nummbe-value").value = numvalue4; updateNumValue(); } var plus = document.querySelector(".nummbe #plus"); plus.onclick = function() { var numvalue4 = parseInt(document.getElementById("nummbe-value").value); numvalue4 = numvalue4 + 1; document.getElementById("nummbe-value").value = numvalue4; updateNumValue(); }
可以将重复代码提取出来,将HTML元素的ID抽象成变量,避免出现重复代码。可以使用以下代码进行优化:
```
const nummbeValue = document.getElementById("nummbe-value");
const numpr = document.getElementById("numprice");
const minus = document.querySelector(".nummbe #minus");
const plus = document.querySelector(".nummbe #plus");
function updateNumValue() {
const numvalue4 = parseInt(nummbeValue.value);
numpr.innerHTML = (34.99 * numvalue4);
}
function updateNumValueOnClick(delta) {
let numvalue4 = parseInt(nummbeValue.value);
numvalue4 += delta;
if (numvalue4 < 0) {
numvalue4 = 0;
}
nummbeValue.value = numvalue4;
updateNumValue();
}
minus.onclick = function() {
updateNumValueOnClick(-1);
};
plus.onclick = function() {
updateNumValueOnClick(1);
};
```
这样可以提高代码的可读性,避免出现过多的重复代码。
阅读全文