Передача данных в контроллер при использовании URL.Action в шаблоне jQuery в динамических представлениях Asp.Net MVC - PullRequest
0 голосов
/ 17 апреля 2011

У меня есть динамическое представление, созданное с использованием шаблона jQuery. Пользовательский интерфейс в основном представляет собой сетку, где последний столбец представляет собой гиперссылку. При нажатии на это изображение я хочу передать некоторые данные контроллеру, и эти данные присутствуют в каком-то другом столбце той же строки. Ниже приведена разметка кода

Пользовательский интерфейс:

{{each Results}}
        <tr>
            <td>${UserName}</td>
            {{if IsActive === 'True'}}
                <td><a href=<%: Url.Action("Test","User",new {userName=???,mode="DeActivate"}) %>><img></img><a></td>
            {{/if}}                
        </tr>
    {{/each}}    

Контроллер:

public ActionResult Test(string userName,string mode)
    {
    }

В основном я хочу связать значение $ {UserName} с полем userName в списке параметров Url.Action.

Большинство примеров, которые я видел в методах вспомогательного действия Url.Action или Html, имеют строковые данные в качестве параметров. Я хочу знать, возможно ли читать данные из других элементов управления на странице в списке параметров Url.Action.

1 Ответ

1 голос
/ 17 апреля 2011

Попробуйте так:

<a href=<%: Url.Action("Test", "User", new { mode = "DeActivate" }) %>&amp;userName=${$item.urlEncodeUserName()}>
    ...
</a>

где вы определили:

$('#someTemplate').tmpl(contacts, {
    urlEncodeUserName: function () {
        return encodeURIComponent(this.data.UserName);
    }
}).appendTo('#someContainer');
...