2013-10-02 2 views
4

Я Html написано в синтаксисе Razor:Нокаут атрибут данных связываются в синтаксисе бритвы

@for (var i = 0; i < Model.AllBetStatuses.Count; ++i) 
{ 
    <li class="betReportingCheckbox"> 
     @Html.CheckBoxFor(m => m.AllBetStatuses[i].Checked, new { @class = 
     "betStatusCheckboxes"}) 
     @Html.DisplayFor(m => m.AllBetStatuses[i].Name) 
     @Html.HiddenFor(m => m.AllBetStatuses[i].Value) 
    </li> 
} 

Я хочу использовать knockout.js, чтобы связать эти значения, но когда я пытаюсь что-то такого типа:

@Html.CheckBoxFor(m => m.AllBetStatuses[i].Checked, new { @class = 
     "betStatusCheckboxes", @data-bind="..."}) 

Я получаю синтаксическую ошибку, потому что символ '-' там недействителен. Есть ли простой способ сделать это с помощью синтаксиса Razor?

+0

Вы пробовали ..., "data-bind" = "..." ...? (или ..., data-bind = "..." ...) –

+0

iirc, это должно быть просто: 'data_bind =" ... "' –

+0

Возможный дубликат [Как использовать данные HTML-5- \ * атрибуты в ASP.NET MVC] (http://stackoverflow.com/questions/2520487/how-to-use-html-5-data-attributes-in-asp-net-mvc) – nemesv

ответ

14

Замените '-' символ '_'

@Html.CheckBoxFor(m => m.AllBetStatuses[i].Checked, new { @class = 
    "betStatusCheckboxes", @data_bind="..."}) 

Я надеюсь, что это помогает.

+0

Я понял это позже, но когда я вернулся, у вас уже был ответ, поэтому я пометю ваше решение. –

Смежные вопросы