我有这个 jQuery:
$(document).on("keyup", "[id$=explainPaymentTextBox]", function (e) {
console.log("explainPaymentTextBox keyup reached");
while ($(this).outerHeight() < this.scrollHeight + parseFloat($(this).css("borderTopWidth")) + parseFloat($(this).css("borderBottomWidth"))) {
$(this).height($(this).height() + 1);
};
});
...以及这个相关的 C# 代码隐藏:
boxPaymentExplanation = new TextBox()
{
CssClass = "dplatypus-webform-field-input",
ID = "explainPaymentTextBox"
};
boxPaymentExplanation.Width = 660;
boxPaymentExplanation.Style.Add("TextMode", "MultiLine");
boxPaymentExplanation.TextMode = TextBoxMode.MultiLine;
this.Controls.Add(boxPaymentExplanation);
...在 Chrome 中运行良好(文本框向上移动/在输入文本时垂直增长,以显示所有文本):
在 IE 中,虽然(浏览器模式 = Internet Explorer 8,这显然是用户在这里看到的标准模式),但它不起作用:
(该文本框中有更多的文本行,但它们不显示)。
是否可以告诉 IE 直起身子并正确飞行,或者 IE 用户注定要拥有一个静态大小的文本框?