ASP.NET MVC3: Razor GetHTML Настраиваемый макет таблицы - PullRequest
2 голосов
/ 18 ноября 2011

Я вручную создаю таблицу, используя встроенную функцию бритвы GETHtml.

@table.GetHtml(
    columns: table.Columns(
        table.Column("Account"),
        table.Column("Due"),
        table.Column("Topic"),
        table.Column("Type"),
        table.Column("Completed?", format:  @<input id="Complete" name="Complete" type="checkbox" onclick="/Tasks/Complete?ID=700" />)
        )
)

Мне нужен способ установки флажка или кнопки для активации контроллера.он не принимает динамический флажок.Флажок html также ничего не делает.

Ответы [ 2 ]

1 голос
/ 21 ноября 2011

У меня есть рабочее решение без использования форм, столбец будет установлен с использованием следующего кода:

table.Column("Completed?", format: @<input type="checkbox" onclick="location.href='@Url.Action("Complete", "Tasks", new { TaskID = item.TaskID })'" />

Я думаю, возможно, что свойство name заставляло его публиковать его как параметр, а не рассматривать как отправку. В противном случае это должно быть событие onclick. Я использовал location.href, затем установил его, используя синтаксис бритвы, и включил идентификатор в качестве свойства.

0 голосов
/ 18 ноября 2011

Пара способов выполнить публикацию на желаемом контроллере. Оберните свою таблицу формой, которую вы хотите отправить, или добавьте несколько обработчиков AJAX для публикации желаемых данных. Простая форма может быть выполнена как:

<% using (Html.BeginForm<SomeController>(x=> x.SomeAction())
{

@table.GetHtml(
    columns: table.Columns(
        table.Column("Account"),
        table.Column("Due"),
        table.Column("Topic"),
        table.Column("Type"),
        table.Column("Completed?", format:  @<input id="Complete" name="Complete" type="submit" " />)
        )
)

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...