c# - 使用带有 Razor 语法的 knockout 绑定(bind)

标签 c# asp.net-mvc razor knockout.js

我想知道是否可以在 Razor 语法中使用 Knockout data-bind

我认为有以下代码:

<tbody data-bind="foreach: relays">
    <tr>
        <td id="body-button-column">
            <button class="btn btn-default btn-sm" title="Remove relay" data-bind="click: $parent.removeRelay">
                <i class="glyphicon glyphicon-remove-circle"></i>
            </button>
        </td>
        <td><input type="text" data-bind="value: $index"/></td>
        <td>@Html.DropDownList("RelayConfigurations[" + $index + "].Address", Model.Addresses, "Select an Item")</td>
    </tr>
</tbody>

我的 View 模型具有以下属性

self.relays = ko.observableArray(@Html.Raw(Json.Encode(Model.RelayConfigurations)));

其中 RelayConfigurations 是模型上的集合对象。

在使用 Razor 语法的行中 @Html.DropDownList...我想对 $index 值使用 knockout 绑定(bind),但不知道该怎么做。或者如果有可能的话。

如果我将该行中的 $index 替换为硬编码值零, Controller 操作中的模型绑定(bind)将按预期在回发上工作(尽管只是由于硬编码值为零,集合中的第一个中继有任何数据。

最佳答案

当然你可以在 Razor 中使用 knockout :)

我相信您正在寻找的是这个匿名对象方法:

@Html.DropDownList("somelist", Model.List, new { id = "listbox", data_bind = "" })

关于c# - 使用带有 Razor 语法的 knockout 绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23375564/

相关文章:

c# - 如何通过 WPF 的 XAML 中的样式应用超链接 TextDecorations 属性

c# - 最终用户可以安全编辑的模板系统

c# - LINQ 错误无效的初始值设定项成员声明符

asp.net-mvc - 如何在 MVC 运行时自定义 Display 和 Required 属性

c# - 使用 ASP.Net MVC3 显示 byte[] 中包含的图像

c# - app.config 或 web.config 中的配置与 WCF 中的代码之间的关系

java - Xamarin Android java.lang.InstantiationException : java. lang.Class 没有零参数构造函数

c# - 进程 "System"导致CPU占用率高

asp.net - 部署时自定义 JsonConverter 被忽略

c# - 将 Html.DropDownList 助手与 ViewBag 列表一起使用