2015-02-10 1 views
0

У меня есть страница, отображающая таблицу и DropDownList - которые не включены в форму. Когда пользователь выбирает значение в DropDownList - Javasript помещает выбранное значение в текстовое поле с именем selectedCategory, который находится в форме:RAZOR - как передать данные контроллеру с помощью Url.Action?

@Html.TextBox("selectedCategory", null, new { @id = "selectedCategory", @style = "width: 100px;" }) 

Я использую пейджинг, поэтому у меня есть:

@Html.PagedListPager(Model, page => Url.Action("Index", 
new { page, SortO = ViewBag.SortO, 
     FilterV = ViewBag.FilterV, 
     category = selectedCategory })) 

В этом случае я получаю ошибку: Имя «selectedCategory» не существует в текущем контексте. Когда я бегу без «категории = selectedCategory» на исходный код страницы я вижу поле существует:

<input id="selectedCategory" name="selectedCategory" style="width: 100px;" type="text" value="" /> 

Так что мой вопрос заключается в том, чтобы добавить «категорию = значение selectedCategory поля»?

Спасибо,

ZB

ответ

0

Я проанализировал мою проблему еще раз, и я пришел к выводу, что мне нужно, чтобы решить мою проблему другим способом - с помощью переменных сеанса или ViewBag.

И вот почему: Код:

@Html.PagedListPager(Model, page => Url.Action("Index", 
new { page, SortO = ViewBag.SortO, 
     FilterV = ViewBag.FilterV, 
     category = xxx })) 

преобразуется в HTML:

<li><a href="/?page=2&SortO=My%20Sort&FilterV=My%20Filter&category=xxx">2</a></li> 
    <li><a href="/?page=3&SortO=My%20Sort&FilterV=My%20Filter&category=xxx">3</a></li> 
    <li><a href="/?page=4&SortO=My%20Sort&FilterV=My%20Filter&category=xxx">4</a></li> 

После пользователь выбирает опцию из DropDownList, функция JavaScript необходимо обновить категорию» = xxx "со значением выбранного параметра - я думаю, это можно сделать, но он выглядит запутанным для меня.

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

  • Нет связанных вопросов^_^