我是JavaScript的新手,经过多次尝试创建一个“快捷方式”,在函数中使用getElementById,我几乎放弃了。我知道这有问题,但我找不到错误。
这是HTML
<body>
<table>
<tr>
<td>Name: </td>
<td id="name"></td>
</tr>
</table>
<script src="JS/return.js"></script>
这是JavaScript代码:
var hotel = {
name: "Park",
roomRate: 240,
discount: 15 / 100,
offerPrice: function() {
var offerRate = this.roomRate - (this.roomRate * this.discount);
return offerRate;
}
};
function element(idName, text) {
var idd = document.getElementById(idName).textContent = text;
}
element(name, hotel.name);
我感谢我能得到的任何帮助:)
编辑:
谢谢!正确的代码如下:
function element(idName, text) {
var idd = document.getElementById(idName).textContent = text;
}
element("name", hotel.name);
答案 0 :(得分:1)
试试这个
function element(idName, text) {
var idd = document.getElementById(idName);
idd.textContent = text;
}
element("name", hotel.name);
首先,获取元素,然后单独修改其内容
答案 1 :(得分:0)
您需要定义一个用作element
//need to define a name first
var name = "name";
function element(idName, text) {
document.getElementById(idName).textContent = text;
}
element(name, hotel.name);
答案 2 :(得分:0)
您正在将名为name的变量传递给函数,但您尚未在代码中定义它。
如果您想保持命名的灵活性,只需在脚本中定义变量,如下所示:
var name = "name";
如果你设置了传递id,只需通过方法传递字符串“name”。
这里要理解的重要一点是,你需要通过你的方法传递ID的字符串,作为一个等于字符串的变量,或者字符串本身。
此外,如果您想在定义对象后对其进行操作,则需要将其返回。但一次只有一个问题!