diff --git a/src/BootstrapBlazor.Server/Components/Samples/TextAreas.razor b/src/BootstrapBlazor.Server/Components/Samples/TextAreas.razor
index 8ffc65a3aa5..1d74d54a6d0 100644
--- a/src/BootstrapBlazor.Server/Components/Samples/TextAreas.razor
+++ b/src/BootstrapBlazor.Server/Components/Samples/TextAreas.razor
@@ -65,4 +65,12 @@
@bind-Value="@KeyText">
+
+
+
+
+
diff --git a/src/BootstrapBlazor.Server/Components/Samples/TextAreas.razor.cs b/src/BootstrapBlazor.Server/Components/Samples/TextAreas.razor.cs
index 553c6b82550..f9482fe95d8 100644
--- a/src/BootstrapBlazor.Server/Components/Samples/TextAreas.razor.cs
+++ b/src/BootstrapBlazor.Server/Components/Samples/TextAreas.razor.cs
@@ -90,6 +90,21 @@ private void MockChat()
}
}
+ [NotNull]
+ private ConsoleLogger? ConsoleLogger { get; set; }
+
+ private Task OnEnterAsync(string val)
+ {
+ ConsoleLogger.Log($"Trigger Enter Key Event");
+ return Task.CompletedTask;
+ }
+
+ private Task OnEscAsync(string val)
+ {
+ ConsoleLogger.Log($"Trigger Esc Key Event");
+ return Task.CompletedTask;
+ }
+
///
/// Dispose
///
diff --git a/src/BootstrapBlazor.Server/Locales/en-US.json b/src/BootstrapBlazor.Server/Locales/en-US.json
index 8075f8cc43c..d757b397cf0 100644
--- a/src/BootstrapBlazor.Server/Locales/en-US.json
+++ b/src/BootstrapBlazor.Server/Locales/en-US.json
@@ -3265,7 +3265,7 @@
"TextAreaBindWayBindValue": "The binding value",
"TextAreaReadOnlyTitle": "Readonly",
"TextAreaReadOnlyIntro": "When you set the readonly property, the component prohibits input",
- "TextAreaHeightTitle": "height",
+ "TextAreaHeightTitle": "Height",
"TextAreaHeightIntro": "When you set the rows property, component initialization displays a fixed row height",
"TextAreaBindWayTitle": "Two-way binding",
"TextAreaBindWayIntro": "Binding variables within a component, data is automatically synchronized",
@@ -3284,7 +3284,10 @@
"TextAreaUseShiftEnterTitle": "Shift Enter",
"TextAreaUseShiftEnterIntro": "By setting UseShiftEnter=\"true\" you can start using Shift + Enter for line breaks, which is suitable for dialog applications.",
"TextAreaUseShiftEnterPlaceHolder": "Please enter some text, Enter sends Shift + Enter line break",
- "TextAreaUseShiftEnter": "Whether to use Shift + Enter instead of the original Enter key behavior"
+ "TextAreaUseShiftEnter": "Whether to use Shift + Enter instead of the original Enter key behavior",
+ "TextAreaKeyEventTitle": "Enter/Esc KeyEvent",
+ "TextAreaKeyEventIntro": "Start the Enter Esc key callback event by setting OnEnterAsync OnEscAsync",
+ "TextAreaKeyEventPlaceHolder": "Press Enter/Esc key to trigger the event"
},
"BootstrapBlazor.Server.Components.Samples.Toggles": {
"TogglesOnText": "On",
diff --git a/src/BootstrapBlazor.Server/Locales/zh-CN.json b/src/BootstrapBlazor.Server/Locales/zh-CN.json
index a77f39725c0..86baa5f54b6 100644
--- a/src/BootstrapBlazor.Server/Locales/zh-CN.json
+++ b/src/BootstrapBlazor.Server/Locales/zh-CN.json
@@ -3284,7 +3284,10 @@
"TextAreaUseShiftEnterTitle": "Shift Enter",
"TextAreaUseShiftEnterIntro": "通过设置 UseShiftEnter=\"true\" 开始使用 Shift + Enter 进行换行操作,适用于对话框类应用",
"TextAreaUseShiftEnterPlaceHolder": "请输入一些文字,Enter 发送 Shift + Enter 换行",
- "TextAreaUseShiftEnter": "是否使用 Shift + Enter 代替原回车按键行为"
+ "TextAreaUseShiftEnter": "是否使用 Shift + Enter 代替原回车按键行为",
+ "TextAreaKeyEventTitle": "Enter/Esc 按键事件",
+ "TextAreaKeyEventIntro": "通过设置 OnEnterAsync OnEscAsync 开始 Enter Esc 按键回调事件",
+ "TextAreaKeyEventPlaceHolder": "按下 Enter/Esc 键触发事件"
},
"BootstrapBlazor.Server.Components.Samples.Toggles": {
"TogglesOnText": "开启",
diff --git a/src/BootstrapBlazor/Components/Textarea/Textarea.razor b/src/BootstrapBlazor/Components/Textarea/Textarea.razor
index bc249f4bfe6..437cc0662fe 100644
--- a/src/BootstrapBlazor/Components/Textarea/Textarea.razor
+++ b/src/BootstrapBlazor/Components/Textarea/Textarea.razor
@@ -1,6 +1,6 @@
@namespace BootstrapBlazor.Components
@inherits BootstrapInputEventBase
-@attribute [BootstrapModuleAutoLoader]
+@attribute [BootstrapModuleAutoLoader(JSObjectReference = true)]
@if (IsShowLabel)
{