diff --git a/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor b/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor
index 11ded062a34..b82400444c2 100644
--- a/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor
+++ b/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor
@@ -12,7 +12,7 @@
data-bb-auto-dropdown-focus="@ShowDropdownListOnFocusString" data-bb-debounce="@DurationString"
data-bb-skip-esc="@SkipEscString" data-bb-skip-enter="@SkipEnterString" data-bb-blur="@TriggerBlurString"
data-bb-scroll-behavior="@ScrollIntoViewBehaviorString" data-bb-trigger-delete="true"
- @bind="@CurrentValueAsString"
+ @bind="@CurrentValueAsString" @onblur="@OnBlur"
placeholder="@PlaceHolder" disabled="@Disabled" @ref="FocusElement"/>
diff --git a/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor.cs b/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor.cs
index d9c327186e8..a5bf61d8f9d 100644
--- a/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor.cs
+++ b/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor.cs
@@ -139,7 +139,7 @@ private async Task OnClickItem(string val)
///
///
[JSInvokable]
- public override async Task TriggerFilter(string val)
+ public async Task TriggerFilter(string val)
{
if (OnCustomFilter != null)
{
diff --git a/src/BootstrapBlazor/Components/AutoComplete/PopoverCompleteBase.cs b/src/BootstrapBlazor/Components/AutoComplete/PopoverCompleteBase.cs
index 392cb512550..264a7880665 100644
--- a/src/BootstrapBlazor/Components/AutoComplete/PopoverCompleteBase.cs
+++ b/src/BootstrapBlazor/Components/AutoComplete/PopoverCompleteBase.cs
@@ -158,26 +158,6 @@ protected override void OnParametersSet()
Offset ??= "[0, 6]";
}
- ///
- /// 触发 OnBlur 回调方法 由 Javascript 触发
- ///
- [JSInvokable]
- public async Task TriggerBlur()
- {
- if (OnBlurAsync != null)
- {
- await OnBlurAsync(Value);
- }
- }
-
- ///
- /// TriggerFilter 方法
- ///
- ///
- ///
- [JSInvokable]
- public virtual Task TriggerFilter(string val) => Task.CompletedTask;
-
///
///
///
diff --git a/src/BootstrapBlazor/Components/AutoFill/AutoFill.razor.cs b/src/BootstrapBlazor/Components/AutoFill/AutoFill.razor.cs
index db790e9ef9f..c306690e49e 100644
--- a/src/BootstrapBlazor/Components/AutoFill/AutoFill.razor.cs
+++ b/src/BootstrapBlazor/Components/AutoFill/AutoFill.razor.cs
@@ -248,7 +248,7 @@ private async ValueTask> LoadItems(ItemsProviderRequ
///
/// The value to filter by.
[JSInvokable]
- public override async Task TriggerFilter(string val)
+ public async Task TriggerFilter(string val)
{
if (OnQueryAsync != null)
{
diff --git a/src/BootstrapBlazor/Components/Search/Search.razor.cs b/src/BootstrapBlazor/Components/Search/Search.razor.cs
index fdda496eb9b..e9fc22ba6ff 100644
--- a/src/BootstrapBlazor/Components/Search/Search.razor.cs
+++ b/src/BootstrapBlazor/Components/Search/Search.razor.cs
@@ -208,14 +208,6 @@ protected override void OnParametersSet()
}
}
- private bool _render = true;
-
- ///
- ///
- ///
- ///
- protected override bool ShouldRender() => _render;
-
private string _displayText = "";
///
/// 点击搜索按钮时触发此方法
@@ -278,19 +270,17 @@ private async Task OnClickItem(TValue val)
}
///
- /// TriggerFilter 方法
+ /// TriggerFilter method called by Javascript.
///
///
[JSInvokable]
- public override async Task TriggerFilter(string val)
+ public async Task TriggerFilter(string val)
{
- _render = false;
_displayText = val;
if (IsTriggerSearchByInput)
{
await OnSearchClick();
}
- _render = true;
_dropdown.Render();
}
}
diff --git a/test/UnitTest/Components/AutoCompleteTest.cs b/test/UnitTest/Components/AutoCompleteTest.cs
index 911e8c1972a..ede96aca84c 100644
--- a/test/UnitTest/Components/AutoCompleteTest.cs
+++ b/test/UnitTest/Components/AutoCompleteTest.cs
@@ -265,9 +265,8 @@ public async Task OnBlurAsync_Ok()
return Task.CompletedTask;
});
});
-
- // trigger blur
- await cut.InvokeAsync(() => cut.Instance.TriggerBlur());
+ var input = cut.Find(".form-control");
+ await cut.InvokeAsync(() => input.Blur());
Assert.Equal("test1", val);
}
@@ -328,9 +327,9 @@ public void Trigger_Ok()
class MockPopoverCompleteBase : PopoverCompleteBase
{
- public override Task TriggerFilter(string val)
+ public Task TriggerFilter(string val)
{
- return base.TriggerFilter(val);
+ return Task.CompletedTask;
}
}
}