Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
Есть проблема: один и тот же код: JQuery $("#btn1").click(function () { $.post('Log'); }); работает в представлении Index, но не работает в представлении Detail. То есть в Detail при нажатии btn1 вызов $.post не срабатывает. А в Index срабатывает. Оба представления и метод Log находятся в одном и том же контроллере: public void Log() { Util.Log("Log"); } представления отличаются действиями: public virtual ActionResult Index() ... public virtual ActionResult Detail(int id) Не пойму, что я не так делаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 18:37 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
1) у Detail есть атрибут [HttpPost]? 2) параметр id в Detail передается? если сделать Detail(int? id) и посмотреть, чему равен id ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 18:40 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
1. У Detail нет [HttpPost] . 2. Параметр id в Detail передаётся (равен 1 хоть ставь int?). Если поставить [HttpPost] для Log() то всё равно не работает. При тех же обстоятельствах не работает $.get(). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 19:12 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
Вобщем, проверил на новом приложении где вообще ничего нет. Если действие Detail не имеет входных параметров, то код <script type="text/javascript" src="@Url.Content("~/Scripts/jquery-1.8.2.min.js")"></script> <script type="text/javascript"> $(document).ready(function() { $("#btn1").click(function() { $.get('Log', function(result) { alert(result); }); }); }); </script> отрабатывает без проблем. Если есть входные параметры Detail(int id), то вышеприведённый код не работает. Бред какой-то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 20:04 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
Что-то я перестал понимать, что у вас там не работает конкретно. Выложите тот самый чистый проект, чтобы долго не объяснять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 23:19 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
Проект не получится приложить, рар минимум 2мб. Приложил файлы контроллера и вью. В общем, всё просто. В контроллере Home есть действие Index(int id) . В представлении Index есть скрипт jquery, привязанный к кнопке. Скрипт вызывает Log() который пишет в файл. Если запустить http://localhost:6879/Home/Index/ 1 и нажать на кнопку то ничего не происходит. Если изменить действие Index и убрать входной параметр Index() то при вызове http://localhost:6879/Home/Index и нажатии на кнопку код выполняется, в Log.txt пишет строку и появляется alert с результатом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 23:58 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
Ну не знаю. Если исправить представление на Код: javascript 1. 2. 3. у меня все работает в обоих вариантах ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.07.2014, 01:11 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro, Спасибо, действительно заработало. Я как-то не допетрил добавить Home. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.07.2014, 01:22 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
Дык эта. у вас никак не могло работать ни в каком варианте, этим вы ввели в заблуждение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.07.2014, 01:38 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
Работало, без параметров работало. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.07.2014, 01:49 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
значит у вас что-то в маршрутах прописано и т.п., почему я и просил весь проект а вообще, во-первых для формирования url-ов нужно пользоваться UrlHelper (в представлении это @Html.ActionLink), во-вторых, метод контроллера все-таки должен возвращать ActionResult ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.07.2014, 01:55 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
Что-то не понял. А где я там не использовал Html.ActionLink где должен был? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.07.2014, 23:54 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
сорри, @Url.Action конечно же ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2014, 00:20 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
Всё равно непонятно. Где там дёргать Html.Action? И почему метод контроллера обязательно должен возвращать ActionResult? А если мне в скрипте просто нужно дёрнуть метод проверки данных в бд и по результатам true/false принимать решение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2014, 00:30 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
то есть я про @Url.Action ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2014, 00:31 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
rigorMortisто есть я про @Url.Actionдык в том месте, где была ошибка в виде неправильного урла. @Url.Action как раз и предназначен для того, чтобы формировать правильный url. Нет, ну это, конечно, необязательно, если это вас так расстраивает. Просто, например, если вы вдруг заходите воспользоваться областями (Area), то не потребуется переписывать код представлений. rigorMortisИ почему метод контроллера обязательно должен возвращать ActionResult?Да в общем-то тоже необязательно, тут я был излишне категоричен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2014, 01:07 |
|
||
|
ASP.NET MVC не всегда работает вызов $.post() на странице.
|
|||
|---|---|---|---|
|
#18+
Ну а в моём случае, когда url используется в вызове .post. Вы предлагаете сделать что-то вроде <a href="@Url.Action("Log","Home")" id="ref"></a> и потом в вызове <a href="@Url.Action("Log","Home")" id="ref1"></a> $.get($("#ref1").attr("href"), function (result) { alert(result); }); так что ли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2014, 01:44 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=38691001&tid=1357163]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
32ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 232ms |
| total: | 362ms |

| 0 / 0 |
