powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Нужна помощь по MVC -- GridVew
13 сообщений из 13, страница 1 из 1
Нужна помощь по MVC -- GridVew
    #38392567
NIon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Только начал заниматься ASP.NET MVC . Нужна помощь .
На Web-странице есть элемент GridView . В нем отображены пользователи . Над колонкой , где располагаются Фамилия+Инициалы (например, Сидоров А.С.) есть поле для поиска . Когда в это поле для поиска вводишь текст , в GridView сразу по ходу ввода происходит фильтрация пользователей.
Вопрос наверное очень простой - просто только начал со всем этим работать - Как найти функцию , которая срабатывает при вводе в это поле текста и соответсвенно отображает отфильтрованных пользователей в GridView? Будет ли она в соотв. контроллере , во view или в Models/DAL/.. - где логичнее , в контроллере наверное ?
Спасибо большое заранее
...
Рейтинг: 0 / 0
Нужна помощь по MVC -- GridVew
    #38392660
Zoria
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NIonКак найти функцию
я так понимаю, вы пытаетесь разобраться с работающим приложением?
для начала можно посмотреть в разметку. найти поле. посмотреть как оно написано.
потом посмотреть еще раз на это же поле в браузере, например, под firebugом в firefox.
так же должен интересовать метод "привязки" данных к гридвью и его вызовы.
...
Рейтинг: 0 / 0
Нужна помощь по MVC -- GridVew
    #38392668
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NIon,

функцию найти очень легко. она находится на странице, либо в подключаемом JS-файле, либо в <script> блоке. она реагирует на появление новых символов в элементе управления <input>, которое является строкой поиска. после небольшой задержки в примерно 200-400 мс, она делает AJAX запрос, получает данные и обновляет GridView. принцип такой. конкретная реализация может быть любой. что еще тут добавить?
...
Рейтинг: 0 / 0
Нужна помощь по MVC -- GridVew
    #38392724
NIon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да , приложение работающее.
Как такового элемента управления <input> на странице нет , я так понимаю, что это поле , в которое вводятся данные и после этого происходит отбор является частью самого GridView , т.е. оно находится под названием колонки GridView , под ним этим полем уже идут строки с данными. Вот на картинке это поле под ФИО
...
Рейтинг: 0 / 0
Нужна помощь по MVC -- GridVew
    #38392732
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NIon,

поле это и есть <input>. реализация фильтрации выполнена на клиенте с помощью JavaScript. возможно еще и на сервере, когда незаметно для пользователя JavaScript со страницы отправляет запрос и получает отфильтрованные данные. способ реализации так много, что угадать как у вас там сделано трудно. поэтому на большее не расчитывайте. найти её можно, изучив код страницы, или с помощью дебаггера, например FireBug или Chrome DevTools...
...
Рейтинг: 0 / 0
Нужна помощь по MVC -- GridVew
    #38392755
NIon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
<div id ="UserTableDiv">
<%= Html.GridView("UserTable", typeof(MyApp.Models.MyUser_Validation))%></div>

- вот как описан div , в который вставлен GridView - можно тут что-то доп. сказать ?

Вот , какие есть функции на странице :
=====
$(document).ready(function () {...}
===
$(document).ready(
function () {
$(function () {
$.ajaxSetup({...}
===
jQuery.fn.center = function () {..}
===
связанного с поиском вроде нет ничего.... - в контроллере копать тогда ?
...
Рейтинг: 0 / 0
Нужна помощь по MVC -- GridVew
    #38392760
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NIon,

смотрите в результирующую страницу. что там нерендерилось.
...
Рейтинг: 0 / 0
Нужна помощь по MVC -- GridVew
    #38392870
NIon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
( hVostt ) А как можно это дело исследовать с помощью Chrome DevTools ?
В смысле , смотреть результирующую страницу , "ччто там нарендерилось" - в результ. странице список пользователей с возможностью фильтрации.
Можно наверное еще профайлер на SQL-сервере запустить , и начать отбирать , и посмотреть , что SQL запускает , какие SP...
...
Рейтинг: 0 / 0
Нужна помощь по MVC -- GridVew
    #38392895
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NIon,

http://habrahabr.ru/post/149053/

как посмотреть, что нарендерилось? нажимаете на странице правой кнопкой мыши и выбираете «Просмотр кода страницы» (в Chrome), или «Исходный код страницы» (в FireFox), или «Просмотр HTML-кода» (в Internet Explorer)
...
Рейтинг: 0 / 0
Нужна помощь по MVC -- GridVew
    #38393097
Фотография Sputnick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я так понимаю грид реализован сторонним компонентом?
...
Рейтинг: 0 / 0
Нужна помощь по MVC -- GridVew
    #38393579
NIon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVosttNIon,

http://habrahabr.ru/post/149053/

как посмотреть, что нарендерилось? нажимаете на странице правой кнопкой мыши и выбираете «Просмотр кода страницы» (в Chrome), или «Исходный код страницы» (в FireFox), или «Просмотр HTML-кода» (в Internet Explorer)

Как исходный код страницы посомтреть я знаю , спасибо - я просто не понял сначала , о чем речь. Но это в принципе ничего не дало. А вот за Chrome DevTools и ссылку спасибо огромное - мощная штука , с помощью него я нашел , какой метод класса вызывается.
Вот что пишет в console Chrome DevTools при изменении фильтра в GridView:
GET http://MyServer/MyApp/Users/UserData?bossOnly=false&_search=false&nd=1378891866121&rows=20&page=1&sidx=&sord=asc и т.д.....

где UserData - это метод класса UserController (находится в UserController.cs) , вот как он определен

// Метод необходимый для заполенеия grid
public JsonResult UserData(int? page, bool _search, string sidx, string sord, string UserFirstName, string TypeName, bool bossOnly)
{ ....}

Вопрос №1. Только все равно непонятно , каким образом он вызывается этот метод UserData - ни на одной из страниц , относящихся к View/Users я вызова этого метода не нашел.

И появился еще вопрос № 2.
Я сижу на клиентской машине , Веб-сервер и SQL-сервер это удаленные сервера.
Периодически , через 1-3 раза при обновлении страницы Веб-приложения появляется следующее сообщение:
Ошибка: EntityException
произошла в Users \ Index
Сообщение: The underlying provider failed on Open.
Сообщение InnerException: Login failed for user 'NT AUTHORITY\АНОНИМНЫЙ ВХОД'.

В яндексе смотрел - причин может быть несколько , но почему такое происходит не постоянно , а через 1-3 раза и все потом становится нормально - вот это непонятно.
Спасибо большое заранее за любую помощь.
...
Рейтинг: 0 / 0
Нужна помощь по MVC -- GridVew
    #38393585
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NIon,

по вопросу №1. вызов метода регистрируется где-то в JS-файлах компонента GridView. он срабатывает на определённое событие. возможно это событие регистрируется вот так:

Код: javascript
1.
$('#<здесь идентификатор поля поиска>').change(<здесь регистрация метода>)



по вопросу №2. слетает авторизация. больше ничего не могу сказать, надо больше информации: отлаживать, логгировать, искать причину.
...
Рейтинг: 0 / 0
Нужна помощь по MVC -- GridVew
    #38393991
NIon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVosttNIon,
по вопросу №1. вызов метода регистрируется где-то в JS-файлах компонента GridView. он срабатывает на определённое событие. возможно это событие регистрируется вот так:

$('#<здесь идентификатор поля поиска>').change(<здесь регистрация метода>)

по вопросу №2. слетает авторизация. больше ничего не могу сказать, надо больше информации: отлаживать, логгировать, искать причину.

Спасибо большое за помощь . js-файлов очень много , буду искать :) . Посомтрел - там показывает и файл и строку кода js , откуда был вызов , и стек можно посомтреть. Вызов GET http://MyServer/MyApp/Users/UserData непосредственно осуществлялся из
jQuery-1.4.1.js строка 5123 - но самого
$('#<здесь идентификатор поля поиска>').change(<здесь регистрация метода>) я пока не нашел..

Вот мне еще что непонятно.
Вопрос № 3.
В console Chrome DevTools иногда перестает показывать выловленные запросы типа
GET http://MyServer/MyApp/Users/UserData?bossOnly=false&_search=false&nd=1378891866121&rows=20&page=1&sidx=&sord=asc и т.д.....
- и надо перезагружать Chrome - тогда снова начинает показыать. С чем это может быть связано ?

И еще по вопросу №2 - то что слетает авторизация. Сейчас осознал, что такое началось, когда начал пользоваться браузером Chrome . Запускаешь его - в нем , анпример, проблема с авторизацией. В IE заходишь на ту же страницу - все нормально , и сразу после этого получается и в Chrome на эту же страницу зайти. Может в Chrome настройки какие-то нужно поменять ?
Спасибо большое
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Нужна помощь по MVC -- GridVew
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]