Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
0 / 0 / 0
Регистрация: 02.02.2014
Сообщений: 18

Как передать значения id полей ввода в jquery?

15.02.2014, 17:36. Показов 2497. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть jquery-скрипа вида:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function a(){
        $(document).ready(function(){  
      $('#usrform').keyup(function(){  
                $.ajax({  
                    type: "POST",  
                    url: "getldapdata.php",  
                    data: "text="+$('#samaccname').val(),  
                    success: function(html){  
                        $('#warn').html(html);  
                    }  
                });  
                return false;  
            });  
        });  
}
вызывается событием onkeyup.

Нужно этот же скрипт использовать с другими полями, например:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function a(){
        $(document).ready(function(){  
      $('#usrfindd').keyup(function(){  
                $.ajax({  
                    type: "POST",  
                    url: "getldp.php",  
                    data: "text="+$('#ssrch').val(),
                    success: function(html){  
                        $('#tbl0').html(html);  
                    }  
                });  
                return false;  
            });  
        });  
}
пробовал передавать так:
HTML5
1
... id="samaccname" onkeyup="a(\'#usrform\',this.value,\'#warn\',\'getldapdata.php\');" ...
соответственно, функцию переделал:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function a(arg1,arg2,arg3,arg4){
        $(document).ready(function(){  
      $(arg1).keyup(function(){  
                $.ajax({  
                    type: "POST",  
                    url: arg4,  
                    data: "text="+$(arg2).val(),
                    success: function(html){  
                        $(arg3).html(html);  
                    }  
                });  
                return false;  
            });  
        });  
}
где я неправ? как правильно передавать и использовать внутри функции значения передаваемых аргументов?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.02.2014, 17:36
Ответы с готовыми решениями:

Проверка полей ввода в Диалоге JQuery
Доброго всем времени дня! Задался вопросом сделать форму из input='text' в диалоге JQuery с валидацией полей. Вот простой код: ...

Как достать и передать в другой метод значения нескольких текстовых полей по нажатию кнопки?
Привет всем! Владеющие языком, прошу принять новичка в свои ряды, ну и... помочь чуток. Не могу понять как... Есть 2 (и более)...

Считать данные с полей ввода и передать в функцию
Помогите разобраться, сам во flash плохо разбираюсь . В ActionScript 2.0 нужно считать данные с полей ввода и вызвать функцию с этими...

9
 Аватар для Lazy_Den
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
15.02.2014, 17:52
Цитата Сообщение от Mortgoroth Посмотреть сообщение
где я неправ?
Всё зависит от конкретной задачи. К примеру, я не вижу проблем установить для всех даких полей один класс и использовать в качестве селектора именно его. Следующий вопрос был бы вроде: "Как понять, из какого поля идут данные?". А вот тут всё зависит от вашей фантазии. В качестве такого маркера, может быть и имя поля, и его id, и даже атрибуд data-*, в который можно впихнуть всё, что угодно: и сопутствующие данные, и маркеры, и маму с папой. Теперь, остается добавить к отправляемым данным этот маркер и на сервере уже ориентироваться на него.

Добавлено через 2 минуты
P.S. По ходу, хочу посоветовать вам делать минимальное кол-во символов, при котором будете делать ajax-запрос. Нет смысла мучать сервер, если отсылается одна буква.
0
0 / 0 / 0
Регистрация: 02.02.2014
Сообщений: 18
15.02.2014, 18:06  [ТС]
конкретная задача№1: при вводе в поле c id="samaccname" происходит поиск в ldap на предмет существования введенного sAMAccountName. При совпадении вылезает большой красивый восклицательный знак
конкретная задача№2: при вводе в поле с id="ssrch" происходит поиск в ldap всех юзеров, чьи CN начинаются на введенные буквы. Результат поиска выводится в таблицу.
задачи разные, выполняются в разных php-скриптах, выдают разный результат. Можно, конечно, оставить две функции, но хочется унификации
0
 Аватар для Lazy_Den
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
15.02.2014, 18:13
Цитата Сообщение от Mortgoroth Посмотреть сообщение
хочется унификации
Ну, так чем не подходит предложенный способ? У вас одна функция, отвечающая за отправку, в ней же, в зависимости от id поля, вы отправляете запрос в тот или иной обработчик. Всё предельно просто и без лишнего кода. Вам пример сделать?
0
0 / 0 / 0
Регистрация: 02.02.2014
Сообщений: 18
15.02.2014, 18:23  [ТС]
если не затруднит

Добавлено через 8 минут
оффтоп, но еще маленький вопрос: почему эта функция в IE не работает?
0
 Аватар для Lazy_Den
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
15.02.2014, 18:31
В объект params - можно добавлять сколько угодно параметров, и делать сколько угодно отдельных функций, которые будут обрабатывать разные ответы на ajax-запросы.
JavaScript
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
26
27
28
var params = {
    'someid1':{
        'url': '/path/handler1.php',
        'func': func1
    },
    'someid2':{
        'url': '/otherpath/handler2.php',
        'func': func2
    }
};
$('.check').on('keyup', function(){
    var cVal = $(this).val(),
        cId = $(this).attr('id');
    if(cVal.length > 2){
        // тут ваш ajax-запрос,
        // я же просто вывожу данные
        $('#output').html('<p>Отправили данные по адресу: ' + params[cId].url + '</p>');
        // это функция обработчик - отдельно под каждый запрос
        params[cId].func();
    }
});
 
function func1(){
    alert('Приехали данные по запросу 1');
}
function func2(){
    alert('Приехали данные по запросу 2');
}
Пример тут

Добавлено через 1 минуту
Цитата Сообщение от Mortgoroth Посмотреть сообщение
почему эта функция
Какая именно функция?
0
0 / 0 / 0
Регистрация: 02.02.2014
Сообщений: 18
15.02.2014, 18:38  [ТС]
спасибо, буду разбираться

Добавлено через 1 минуту
Какая именно функция?
моя изначальная, которая таблицу с результатами поиска выводит

Добавлено через 2 минуты
пардон, все работает...
0
 Аватар для Lazy_Den
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
15.02.2014, 18:40
Цитата Сообщение от Mortgoroth Посмотреть сообщение
спасибо, буду разбираться
Там нечего разбираться. В параметр url подставляете params[cId].url, в success подставляете params[cId].func(). Всё.
JavaScript
1
2
3
4
5
$.ajax({
    url: params[cId].url,
    data: {someKey1: someVal1, someKey2: someVal2},
    success: params[cId].func
});
К этому уже возвращаться не будете. Всё остальное прописываете в объекте params и callback-функциях, если такие нужны.
0
0 / 0 / 0
Регистрация: 02.02.2014
Сообщений: 18
15.02.2014, 18:44  [ТС]
Там нечего разбираться
С учетом того, что php я впервые увидел два месяца назад, js - месяц, а ajax вообще вчера, то разбираться придется Огромное спасибо за помощь!
0
 Аватар для Lazy_Den
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
15.02.2014, 18:49
Цитата Сообщение от Mortgoroth Посмотреть сообщение
php я впервые увидел два месяца назад, js - месяц, а ajax вообще вчера
А вы отчаянный Если не вляпаетесь в какие-нибудь "уроки Попова", то быстро освоитесь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.02.2014, 18:49
Помогаю со студенческими работами здесь

Передать значения Checkbox via jQuery+ajax
Нашел пример на stackoverflow. Но почему-то у меня он не работает: Форма с чекбоксами. Значения чекбоксов посылаются на обработку...

JQuery .autocomplete с событием onItemSelect - передать выбор значения в php
Доброго дня! Помогите отредактировать код: Последовательность такая: 1. Изначально выведен в браузере: &lt;p&gt;&lt;b&gt;Шаг...

Передать значения полей в метод для output в console
Всем привет Есть листы List&lt;string&gt; resultElements = resultCommand.Split(' ').Where(c =&gt; c != string.Empty).ToList();// получил...

Можно ли передать в контроллер значения текстовых полей строки таблицы, в которой находится кнопка?
Здравствуйте. У меня есть такая таблица: @foreach (var b in ViewBag.purchHist) { &lt;tr&gt; ...

Как выбрать запись и все значения её полей по максимальному значению одного из полей?
Как выбрать запись и все значения её полей по максимальному значению одного из полей? Код. Форма &quot;фрм_03_03_Студенты_Лент&quot;....


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. На мобильном - сканируйте QR-код. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru