Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Web, ASP.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
Ivan Kakan
0 / 0 / 0
Регистрация: 01.04.2011
Сообщений: 6
1

Как сделать в GridView поиск AJAX (как в Google)

23.11.2011, 13:05. Просмотров 1240. Ответов 5
Метки нет (Все метки)

Все привет.

На странице есть текстовое поле Search. В него вписывается значение для поиска, нажимаешь Энтер, инфа в гриде фильтруется по этому слову.
Структура следующая. В грид вытаскиваются данные посредством хранимой процедуры, которая на входе принимает как раз параметр из поля Search параметр @search и возвращает данные в грид.

Но обновления грида идет только после ентера. А хочется сделать. как в поиске гугла - вводишь буквы и грид сразу меняется в зависимости, от введенного параметра.

Как это сделать? (AJAX Control ToolKit не предлагать )) ). Нужно чтоб работало в стандартном гриде.

ЗАРАНЕЕ спасибо.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.11.2011, 13:05
Ответы с готовыми решениями:

Как сделать поле со ссылкой в GridView
есть GridView который вытягивает из базы таблицу..как мне сделать одно из его полей ссылкой..т.е. в...

Как сделать GridView по середине экрана?
как сделать GriwView по середине экрана ? я поставил HTML Table и в стилях сделал text-align:...

Как сделать в gridview двухуровневый заголовок таблицы
Добрый день! Есть grid, который заполняется из базы. Необходимо сделать ему двухуровневый...

Как сделать, чтобы отображалась пустая таблица gridview?
Собственно вопрос в теме. Как сделать чтобы отображалась пустая таблица gridview? Есть база данных...

Как сделать image background для каждой записи GridVIew?
Как сделать image background для каждой записи GridVIew?

5
andrii
183 / 183 / 53
Регистрация: 10.04.2009
Сообщений: 491
23.11.2011, 13:29 2
если я правильно понял, то вот возможности событий по которым вызывать уже готовую функцию
HTML5
1
<asp:TextBox ID="txtSearch" onkeypress="doFilter(this, event)" runat="server"></asp:TextBox>
0
Ivan Kakan
0 / 0 / 0
Регистрация: 01.04.2011
Сообщений: 6
23.11.2011, 14:04  [ТС] 3
andrii, спасибо, но я не совсем понял.
Тогда мне не ясен вид doFilter(a,b)
Можете более развернуто пояснить?
0
andrii
183 / 183 / 53
Регистрация: 10.04.2009
Сообщений: 491
23.11.2011, 15:33 4
Цитата Сообщение от Ivan Kakan Посмотреть сообщение
Но обновления грида идет только после ентера. А хочется сделать. как в поиске гугла - вводишь буквы и грид сразу меняется в зависимости, от введенного параметра.
подразумеваю, что функция уже готова, только вызывать ее нужно при нажатии на клавишу
Javascript
1
onkeypress="ВашаФункция(this, event)"
0
Ivan Kakan
0 / 0 / 0
Регистрация: 01.04.2011
Сообщений: 6
24.11.2011, 10:32  [ТС] 5
andrii, смотрите. JS функция:
Javascript
1
2
3
function onkeypress_btnsearch() {
            document.getElementById('<%= btn_searchUser.ClientID %>').click();
        }
btn_searchUser - это ЛинкБаттон, имитируется нажатие на которую.
<asp:LinkButton ID="btn_searchUser" runat="server" Style="display: none" OnClick="SearchingCatcherButton_Click" />

C#:
C#
1
2
3
4
protected void SearchingCatcherButton_Click(object sender, EventArgs e)
    {
        sql_MasterList.DataBind();
    }
В итоге в поле текстбокса проблематично вводить символы - пропадают, либо нужно очень быстро вписывать слово, просто затерает и не дает вводить дальше.
Есть идеи решения, чтоб сделать нормальный поиск?
Заранее спасибо
0
andrii
183 / 183 / 53
Регистрация: 10.04.2009
Сообщений: 491
24.11.2011, 13:28 6
ох, батенька, мы разговариваем на разные темы, думал то, что скрипт есть, а Вы мне серверную сторону
проблема в том, что вызывается PostBack и фильтрация происходит на стороне сервера, если была бы своя функция то вот так
HTML5
1
2
3
4
5
6
<script type="text/javascript">
    function search() {
        console.log("pressed");
    };
</script>
    <asp:TextBox onkeypress="search()" runat="server" />
ну а если, то вот так
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script type="text/javascript">
        function onkeypress_btnsearch() {
            alert("run");
            var temp = document.getElementById('<%= btn_searchUser.ClientID %>').getAttribute("href");
            var fun = temp.replace(/^javascript:/, '');
            eval(fun);
        }
    </script>
    <asp:TextBox ID="TextBox1" runat="server" onkeypress="onkeypress_btnsearch()"/>
<asp:UpdatePanel runat="server" UpdateMode="Always">
<ContentTemplate>
    
    <asp:LinkButton ID="btn_searchUser" runat="server" Style="display: none" OnClick="SearchingCatcherButton_Click" />
    </ContentTemplate>
    </asp:UpdatePanel>
0
24.11.2011, 13:28
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.11.2011, 13:28

Как сделать чтобы в ячейках GridView было по несколько строк текста?
Просто ширина ячеек получается очень большой! Вот нашла пример, как хотелось, чтобы выглядели...

Как сделать так, чтобы в одну GridView передавались результаты двух запросов
Здравствуйте. Как сделать так чтобы в одну ГридВью передавались результаты двух запросов? Спасибо

Как сделать чтобы первые записи первого столбца gridview были ссылками?
Label1.Text = Session.ToString(); DataSet data = new DataSet(); SqlConnection conect = new...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru