Форум программистов, компьютерный форум, киберфорум
C#: ASP.NET MVC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/41: Рейтинг темы: голосов - 41, средняя оценка - 4.68
9 / 9 / 9
Регистрация: 19.09.2011
Сообщений: 272
1

@Url.Action with parameters

19.04.2014, 12:05. Показов 8267. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть простенькая Partial страничка, сделанная для AJAX.ActionLink
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<label>Новый email</label>
    @Html.Editor("newEmail")
    <input id="button" value="Сохранить e-mail"  type="button" />
    @Html.Hidden("pupilId")
 
<script>
    var id = $("#pupilId").val();
    var RedirectUrl = '@Url.Action("PupilPage", "Pupil", new {pupilId = 5 })';
$(function()
{ 
    $('#button').click(function (e)
    {
        var pupil =
        {
            "pupilId": id,
            "newEmail": $("#newEmail").val(),
        };
        $.post('/Pupil/ChangeEmail', pupil, function (data) {
            window.location.href = RedirectUrl;
        });
        
        return false;
    });
});
</script>
хочу заменить строчку
C#
1
new {pupilId = 5 }
на
C#
1
new {pupilId = id }
То есть передать не просто константой, а именно тот id, который храниться в Html.Hidden. Но, если я так пишу, то Ajax.ActionLink перестаёт открываться. Как мне передать параметр?

Добавлено через 3 минуты
Как только создал тему, пришло озарение)
C#
1
new {pupilId = ViewBag.pupilId }
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.04.2014, 12:05
Ответы с готовыми решениями:

Как скрыть параметры URL и передать их методом пост используя Url.Action()
Здравствуйте. У меня в представлении на сайте есть ссылка, которая формируется в методе действии...

Url.Action не указывает ссылку при наличии 2-ух опциональных параметров маршрутизации в Global.asax
Проблема в том что если в Global.asax в маршрутизацию добавить ещё 1 опциональный метод (act)...

Как расширить ссылку из Controller/Action/Id до Contr/Action/Category/Id ?
Здравствуйте, Дорогие форумчане! Давно не брался за ASP, поэтому задаю несколько глупый и для...

Как из asp получить полный URL и часть URL от вопросительного знака?
Господа подскажите как из asp получить полный URL и часть URL от вопросительного знака. На...

1
9 / 9 / 9
Регистрация: 19.09.2011
Сообщений: 272
25.04.2014, 10:55  [ТС] 2
Вопрос получил неожиданное продолжение а именно - передача двух параметров тем же способом.
Решил добавить ещё один параметр. Итого выглядит это так:
HTML5
1
window.location.href = '@Url.Action("PupilPage", "Pupil", new {lessonId = ViewBag.LessonId, pupilId = ViewBag.PupilId})'
Проблема в том, что первый параметр (в данном случае lessonId) получает правильное значение, а второй параметр (pupilId) получает значение Null. Стоит их поменять местами, то есть
C#
1
new {pupilId = ViewBag.PupilId , lessonId = ViewBag.LessonId }
То всё меняется...уже pupilId получает нужное значение, а lessonId получает значение null. Строка переадресации получается такой "PupilPage?lessonId=36&amp;pupilId=51"
то есть, по-идеи, оба параметра передаются правильно, но в методе действия контроллера правильное значение только у первого свойства. Что за магия?
0
25.04.2014, 10:55
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.04.2014, 10:55
Помогаю со студенческими работами здесь

Можно ли с помощью Response.Redirect(url) открыть этот url в другом фрейме?
Можно ли с помощью Response.Redirect(url) открыть этот url в другом фрейме?

ADODB.Parameters
SET DB = CreateObject(&quot;ADODB.Connection&quot;) DB.Open=ConnectionStr SET...

Ошибка Response object error 'ASP 0158 : 80004005' Missing URL /login.asp, line 10 A URL is required.
В адресной строке броузера набираю: http://localhost/login.asp?http://control.asp Файл...

Как удалять параметры из коллекции Parameters?
Помогите разобраться, пожалуйста. Я при выполнении stored procedure создаю параметр и добавляю его...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru