【问题标题】:html textarea ignoring javascript when set to runat="server" in ASPhtml textarea 在 ASP 中设置为 runat="server" 时忽略 javascript
【发布时间】:2025-11-21 11:40:01
【问题描述】:

我对 html 和 asp 很陌生。

问题是我已经定义了一个 textarea,它根据它所拥有的内容调整大小(使用 javascript 函数)。

在我将 textarea 设置为 runat="server" 之前,它就像一个魅力。然后调整大小不再起作用。

这是为什么? 我该如何解决?

【问题讨论】:

  • 您有任何可以发布的标记吗?

标签: javascript html asp.net textarea runatserver


【解决方案1】:

这可能是由于控件的 id 已更改为 runat="server",如果您使用的是框架 4 或更高版本,则可以使用 ClientIDMode="static" 或使用 ClientID 代替控件的 id。

使用ClientIDMode

<textarea id="TextArea1" cols="20" rows="2" runat="server" ClientIDMode="static" ></textarea>

使用ClientID

<textarea id="TextArea1" cols="20" rows="2" runat="server" ></textarea>

在 javascript 中

  TextArea1 = document.getElementById("<%= TextArea1.ClientID %>");

【讨论】:

  • 这就是问题所在。以为视觉工作室以某种方式管理了这个,但我认为它没有。
  • 无论如何,非静态 ID 非常适合动态添加控件。在将 javascript 添加到这些控件以检索正确的 html 对象时,我会记住您提到的第二个选项。