Blazor 中的双向数据绑定问题:复选框未更新绑定属性

问题描述 投票:0回答:1

我是 Blazor 的初学者

我没有收到任何错误以及为什么双向数据绑定不起作用,

我在 Blazor WebAssembly 应用程序中遇到双向数据绑定问题。我的视图模型中有一个绑定到布尔属性 IsActive 的复选框。当我切换复选框时,该属性不会更新。这是我的代码:

我尝试过使用 @bind-value 和 @bind-value:event="oninput" 但它似乎不起作用。任何帮助将不胜感激!”

我正在构建 Blazor WebAssembly 应用程序,并且遇到双向数据绑定问题。我的视图模型中有一个绑定到布尔属性 IsActive 的复选框。当我切换复选框时,属性不会更新,反之亦然 - 当我在代码中更新属性时,复选框不会反映更改。

这是我的代码

namespace HiddenVilla_Server.Model
{
    public class BlazorRoom
    {
        public int Id { get; set; }
        public string RoomName { get; set; }
        public double Price { get; set; }
        public bool IsActive { get; set; }
    }
}


<h2 class="bg-light border p-2">
    First Room

</h2>
    Room: @Room.RoomName
<br />
    Price: @Room.Price
<br />

<input type="number" @bind-value="Room.Price" @bind-value:event="oninput" />
<br />
<input type="checkbox" @bind-value="Room.IsActive" checked="@(Room.IsActive?"checked":null)" /> &nbsp; Is Active
<br />
<span>This room is @(Room.IsActive ? "Active" : "Inactive")</span>
<br />


    Room: @Room.RoomName
<br />
    Price: @Room.Price
<br />


@code{
    BlazorRoom Room = new BlazorRoom()
    {
        Id = 1,
        RoomName = "Villa Suite",
        IsActive = true,
        Price = 599
    };
 
}

错误信息:

无,应用程序运行没有错误,但绑定未按预期工作。

c# asp.net-mvc-4 blazor-webassembly two-way-binding
1个回答
0
投票

使用 @bind 而不是选中

input type="checkbox" @bind="Room.IsActive" /> &nbsp; Is Active
© www.soinside.com 2019 - 2024. All rights reserved.