Връзка за действие в Knockout foreach обвързване на данни

Опитвам се да свържа данни към Action Link в рамките на Knockoutjs foreach цикъл. Този код работи добре

<ul data-bind="foreach: ItemList">
    <li>
        <a data-bind="attr: { 'href': '@Url.Action("Items", "ItemController")' }" >
              LinkText
         </a>
    </li>
</ul>

Но също така трябва да обвържа параметър и да обвържа LinkText с knockoutjs. Опитах различни примерни кодове, но изглежда нищо не работи.

Крайният код трябва да бъде нещо като,

<ul data-bind="foreach: ItemList">
    <li>
        <a data-bind="attr: { 'href': '@Url.Action("Items", "ItemController")', new { id = DataBindId)' }" >
              DataBindName
         </a>
    </li>
</ul>

Как мога да накарам това да работи?


person Nalaka526    schedule 15.05.2014    source източник
comment
DataBindID и DataBindName идват от JavaScript, нали?   -  person Tomi Lammi    schedule 15.05.2014
comment
@TomiLammi Да DataBindID и DataBindName е в KO модел (Елемент в ItemList)   -  person Nalaka526    schedule 15.05.2014


Отговори (1)


Опитайте тази...

<a data-bind="attr: { 'href': '@Url.Action("Items", "ItemController")?id=' + DataBindId }, text: DataBindName" >
 </a>

Което трябва да изведе нещо като...

<a data-bind="attr: { 'href': '/Item/Items?id=' + DataBindId }, text: DataBindName" >
 </a>
person Anthony Chu    schedule 15.05.2014
comment
Опитах това, но Controller и Action са пълни с нула. В крайна сметка се получава ‹a data-bind=attr: { 'href': '?id=' + objectId} - person BluE; 03.05.2019