将 Javascript 变量传递给 TYPO3 变量

问题描述 投票:0回答:1

通过下面的JS我得到了div的高度

    document.addEventListener(
        "DOMContentLoaded", () => {
          const element = document.getElementById("c27");
          let text = element.offsetHeight + "px";
          document.getElementsByTagName("divSize").??? = text;
        }

    );

现在我想将变量作为值传递给流体变量

<f:variable name="divSize" value="???" />

我该怎么做?

javascript typo3
1个回答
0
投票
document.addEventListener(
    "DOMContentLoaded", () => {
      const element = document.getElementById("c27");
      let text = element.offsetHeight + "px";
      document.querySelector("[name=divSize]").setAttribute('value', text);
    }
);

document.getElementsByTagName("divSize")
查找
<divSize>
元素,而不是
name="divSize"
。您可以使用
document.getElememtsByName()
,但
document.querySelector()
更简单一些(它只返回第一个匹配项,因此您不必对其进行索引)。

使用

setAttribute()
设置
value
属性。您也许可以分配给
.value
属性,但这通常仅适用于用户输入元素(
<input>
<select>
<textarea>
)。不知道
<f:variable>
是否直接支持这个属性

© www.soinside.com 2019 - 2024. All rights reserved.