0

我正在尝试找出一个 js 脚本将在多个 html 页面上提取不同项目 (Id) 的价格 (var) 的位置,但我正在使用的内容只有在所有 var 且顺序相同的情况下才有效所有ID:

function similarfunction() {

  var A1307 = 5.54;
  document.getElementById('A1307').innerHTML = A1307;

  var G2200 = 6.33;
  document.getElementById('G2200').innerHTML = G2200;

  var G5200 = 5.51;
  document.getElementById('G5200').innerHTML = G5200;

  var N3633 = 6.31;
  document.getElementById('N3633').innerHTML = N3633;

  var TS105 = 5.54;
  document.getElementById('TS105').innerHTML = TS105;

}
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  <title>Test page</title>


</head>

<body onLoad="similarfunction()">

  A1307 is $<span id="A1307"></span><br><br> 
  G2200 is $<span id="G2200"></span><br><br> 
  G5200 is $<span id="G5200"></span><br><br> 
  N3633 is $<span id="N3633"></span><br><br> 
  TS105 is $<span id="TS105"></span><br><br>

</body>

</html>

如果我将 html 页面中的第一个 ID 更改为其他内容,则其余内容将不起作用...

我充其量只是一个新手 - 只是试图找到一种方法来更新一个可以在整个站点范围内应用找到 Id 的 js 文档

谢谢你的帮助。

4

1 回答 1

0

其余的不起作用,因为没有您搜索过的 id 元素。getElementById失败并且您的其余代码未执行,经典的runtime exception. 还要更改变量的名称,因为这些变量和相应的元素 ID 之间可能存在冲突。在现代浏览器中使用textContent属性,而不是innerHTML.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Test page</title>

<script type="text/javascript">

function similarfunction(){

    var price_A1307 = 5.54;
    var span_A1307 = document.getElementById('A1307');
    if (span_A1307) span_A1307.textContent = price_A1307;

    var price_G2200 = 6.33;
    var span_G2200 = document.getElementById('G2200');
    if (span_G2200) span_G2200.textContent = price_G2200;

    var price_G5200 = 5.51;
    var span_G5200 = document.getElementById('G5200');
    if (span_G5200) span_G5200.textContent = price_G5200;

    var price_N3633 = 6.31;
    var span_N3633 = document.getElementById('N3633');
    if (span_N3633) span_N3633.textContent = price_N3633;

    var price_TS105 = 5.54;
    var span_TS105 = document.getElementById('TS105');
    if (span_TS105) span_TS105.textContent = price_TS105;

}

</script>

</head>

<body onLoad="similarfunction()">

A1307 is $<span id="A1307"></span><br><br>
G2200 is $<span id="G2200"></span><br><br>
G5200 is $<span id="G5200"></span><br><br>
N3633 is $<span id="N3633"></span><br><br>
TS105 is $<span id="TS105"></span><br><br>

</body>
</html>
于 2019-03-03T17:54:51.913 回答