【问题标题】:Changing the value of a Textarea in javascript在 javascript 中更改 Textarea 的值
【发布时间】:2021-04-19 16:46:15
【问题描述】:

我不知道如何在textarea div 中更改data-initial-value(图中红色突出显示)的值。我曾尝试使用带有输入“hi”的 .innertext,但您可以看到它只会更改内部文本,并且对 data-initial-value 的值没有影响。我正在开发 Google Meet 的扩展程序,并希望在聊天框中输入类型并点击发送。因此,每当在聊天框中输入内容时,Google Meet 都会将输入值设置为 data-initial-value 而不是 innerText。那么如何更改data-initial-value的值呢?

我尝试过但不起作用的方法:

document.querySelector(".KHxj8b").innerText = "hello world";
document.querySelector(".KHxj8b").value = "hello world";

以下图片:


【问题讨论】:

  • data- 开头的属性为data attributes。您可以使用元素的 setAttribute() 方法或使用元素的 dataset 属性在 JavaScript 中设置它们。
  • 我认为您需要在设置value 后触发事件。他们可能正在使用其中一个使用内部状态的 js 框架。真的怀疑仅更改该属性本身会带来很多好处
  • @charlietfl 。 . .确实。所以这个问题实际上似乎是XY problem
  • @BartHofland XY 在这里几乎确定
  • @charlietfl 你是对的 lmao

标签: javascript google-meet


【解决方案1】:

您将需要使用 setAttribute(),因为 data-initial-value 是该标签的一个属性。

document.querySelector(".KHxj8b").setAttribute("data-initial-value", "The value");

将“价值”更改为您想要的任何值。

【讨论】:

    【解决方案2】:

    你必须setAttribute('data-initial-value', yourvalue);

    【讨论】:

      【解决方案3】:

      使用设置属性方法:https://www.w3schools.com/jsref/met_element_setattribute.asp

      document.querySelector(".KHxj8b").setAttribute("data-initial-value", "The value");

      此外,如果它不起作用并且您认为可以删除该属性,则使用 JS 将其删除。 但它可能会破坏一些功能

      element.removeAttribute(attributename)

      这里的元素是 document.querySelector(".KHxj8b")。 和属性是数据初始值

      【讨论】:

        猜你喜欢
        • 2018-07-03
        • 1970-01-01
        • 2014-09-14
        • 1970-01-01
        • 1970-01-01
        • 2014-12-15
        • 1970-01-01
        • 1970-01-01
        • 2013-12-17
        相关资源
        最近更新 更多