Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Asp.Net Mvc and Ajax- problem 
V
    Опции темы
YuriG
Дата 26.7.2009, 11:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 26.7.2009

Репутация: нет
Всего: нет



Всем привет.

Пытаюсь написать приложение с использованием асп.нет мвс.

На мастер странице положил текстовое поле и кнопку :
                      <%--   <% using (Html.BeginForm("SearchBySomeText", "Task", FormMethod.Get)){%>--%>
                      <% using (Ajax.BeginForm("SearchBySomeText", "Task", new AjaxOptions { UpdateTargetId = "main", HttpMethod = "get" }))
                         { %>
                                       
                        <label for="Name"> Text to find : </label>
                        <%= Html.TextBox("Text")%>
                        <input type="submit" id="btnSearch" value="Search" onclick="return CheckInputValue()" /><br />                    
                    <%} %>


Контроллер:

        [AcceptVerbs(HttpVerbs.Get)]
        public ActionResult SearchBySomeText(string Text)
        {
            if (Request.IsAjaxRequest())
            {
                ViewData["SearchResults"] = _dataManager.Tasks.GetTasks();
                return View("Search");
            }
            else // for not ajax Search
            {
                ViewData["SearchResults"] = _dataManager.Tasks.GetTasks();
                return View("Search");
            }
        }


Результат запроса вывожу в представлении Search.aspx :

       <%if (ViewData["SearchResults"]!= null) { %>
        <% foreach (MvcBug.Models.Task t in (IEnumerable<MvcBug.Models.Task>)ViewData["SearchResults"])
           {%>
        <tr>
        <td>    <%= Html.ActionLink("Open","Task",new { id = t.TaskId }) %>
        </td>
        
            <td>
                <%= t.Title %>
            </td>
            <td>
                <%= t.CreatedOn.ToLongDateString() %>
            </td>
        </tr>
        <% } %>
        
        <% } %>

Проблема:

Если использую аякс.запрос то когда получаю результат получаю повторно кнопки и поля с мастер страницы:
http://pic.ipicture.ru/uploads/090726/9jZxmooo6C.jpg

Еслиже использовать обычный запрос- все ОК.
http://pic.ipicture.ru/uploads/090726/TRWHBxzT66.jpg

При чем нет связи с тем что положил текст.поле и кнопку на мастер, так как положил такоеже поле на саму страницу и тоже самое- с Аякс запросом вижу повторно кнопки с мастер страницы


Это сообщение отредактировал(а) YuriG - 26.7.2009, 11:26

Присоединённый файл ( Кол-во скачиваний: 3 )
Присоединённый файл  MvcBug.rar 922,41 Kb
PM MAIL   Вверх
Bestoloch
  Дата 26.7.2009, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 84
Регистрация: 29.6.2009

Репутация: нет
Всего: нет



Ваша проблема заключается в том, что в случае с Ajax запросом вы возвращаете в элемент с id="main" всю страницу, а нужно только необходимую часть.
Код

if (Request.IsAjaxRequest())
{
    return PartialView("SearchResult");
}


где SearchResult это ascx контрол (SearchResult.ascx)
PM MAIL   Вверх
YuriG
Дата 27.7.2009, 14:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 26.7.2009

Репутация: нет
Всего: нет




 Спасибо. Вроде помогло smile smile 
PM MAIL   Вверх
Bestoloch
  Дата 27.7.2009, 14:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 84
Регистрация: 29.6.2009

Репутация: нет
Всего: нет



Тогда пометьте вопрос как решенный.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Любитель
Mymik
mr.DUDA

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка под ASP.NET | Следующая тема »


 




[ Время генерации скрипта: 0.0641 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.