За последние 24 часа нас посетили 30587 программистов и 1801 робот. Сейчас ищут 1008 программистов ...

Как получить значение атрибута не отправляя его через POST запрос

Тема в разделе "PHP для новичков", создана пользователем timur2008, 22 апр 2017.

  1. timur2008

    timur2008 Новичок

    С нами с:
    14 окт 2015
    Сообщения:
    136
    Симпатии:
    2
    Добрый день подскажите пожалуйста мне вот с таким вопросом. Есть форма в ней есть поле id_info так вот мне по задумке нужно получить значение этого id_info не отправляя форму. тоесть типо я должен перед отпарвкой получить справочную информацию из базы по этому id и вывести ее пользователю. Я понял как выводить (я через бутстрап модал это делаю) но вот как получить значение не отправляемого поля я понять не могу :(
     
  2. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.817
    Симпатии:
    1.333
    Адрес:
    Лень
    $_GET $_COOKIE
    почему $_POST не удовлетворяет?
    $_REQUEST
     
  3. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.984
    Симпатии:
    759
    Смутно понимаю, о чем речь, но пахнет ajax-ом.
     
    Fell-x27 нравится это.
  4. timur2008

    timur2008 Новичок

    С нами с:
    14 окт 2015
    Сообщения:
    136
    Симпатии:
    2
    да там как то нужно получиться данные асинхронно , но для начала нужно получить значение атрибута id именно у нажатой формы
     
  5. servitpol

    servitpol Новичок

    С нами с:
    17 авг 2016
    Сообщения:
    63
    Симпатии:
    3
    Код (Javascript):
    1. $(document).on('click', '#form', function() {
    2.  
    3.     var id = $("#form").val();
    4. });
    Про это речь?
     
  6. timur2008

    timur2008 Новичок

    С нами с:
    14 окт 2015
    Сообщения:
    136
    Симпатии:
    2
    почти , у меня у меня одно и тоже название атрибута form на многих элементах и его не поменяешь чтобы оно уникальным стало, нужно как то выбрать у конкретного "кликнутой" формы взять. А эта функция у всех элементов с id ='form' его возьмет
     
  7. servitpol

    servitpol Новичок

    С нами с:
    17 авг 2016
    Сообщения:
    63
    Симпатии:
    3
    Так в чем проблема, сделайте так:
    Код (Javascript):
    1. $(document).on('click', '#form', function() {
    2.     var id = $(this).val();
    3. });
     
  8. timur2008

    timur2008 Новичок

    С нами с:
    14 окт 2015
    Сообщения:
    136
    Симпатии:
    2
    хммм попробовал так сделать , пустой алерт выводит :(
    Код (Javascript):
    1. $(document).on('click', '#idname', function() {
    2.             var id = $(this).val();
    3.             alert(id);
    4. });
    эмм мне нужно вывести значение другого контрола этой формы а он походу id контрола на котором я кликнул выводит значение :(

    Мне получается нужно вывести при этом значение value контрола у которого id = '
    orgId' Вот
     
  9. servitpol

    servitpol Новичок

    С нами с:
    17 авг 2016
    Сообщения:
    63
    Симпатии:
    3
    Ну, не забывайте про то что id должен быть уникальным и на странице должен встречаться всего один раз. Попробуйте не привязываться к id-шнику, а брать данные через класс:
    Код (Javascript):
    1. $(document).on('click', '.idname', function() {
    2.             var id = $(this).val();
    3.             alert(id);
    4. });
     
    mkramer нравится это.
  10. timur2008

    timur2008 Новичок

    С нами с:
    14 окт 2015
    Сообщения:
    136
    Симпатии:
    2
    вот в этом вся проблема , он не уникальный там у них у всех id одинаковое. Поэтому нужно выбрать id именно в кликнутой форме, т.к. у меня таких форма очень много может быть.
     
  11. servitpol

    servitpol Новичок

    С нами с:
    17 авг 2016
    Сообщения:
    63
    Симпатии:
    3
    У Вас есть доступ к коду? Если есть, то в чем проблема, добавьте к кнопке класс:
    HTML:
    1. <button id="idname" class="idname" value="1820">idname</button>
    И используйте конструкцию:
    Код (Javascript):
    1. $(document).on('click', '.idname', function() {
    2.             var id = $(this).val();
    3.             alert(id);
    4. });
     
  12. timur2008

    timur2008 Новичок

    С нами с:
    14 окт 2015
    Сообщения:
    136
    Симпатии:
    2
    Эмм это в данном примере 1820 ,у меня там может быть и любое другое число. и там тогда для каждого класса свой класс получится ?? Или я просто не понимаю чтото ?. Просто у меня эта форма динамически генерируется из php кода
     
  13. servitpol

    servitpol Новичок

    С нами с:
    17 авг 2016
    Сообщения:
    63
    Симпатии:
    3
    Да, я просто для примера привел. Скиньте код который у Вас форму генерирует...
     
  14. timur2008

    timur2008 Новичок

    С нами с:
    14 окт 2015
    Сообщения:
    136
    Симпатии:
    2
    PHP:
    1. public function BuildBodyForm() {
    2.         try
    3.         {
    4.                **********************************************
    5.  
    6.                 $orgid = $this->helper("hidden","ident".$this->Problem->getTempData(),"0","id",$this->Problem->orgid ());
    7.                 *************************************************************************
    8.  
    9.                 $this->partFormB =
    10.                         $id."   ".
    11.                         $orgid."   ".
    12.                         $test."  ".
    13.                         "<td>".$userFio."</td>".
    14.                         "<td>".$timeProblem."</td>".
    15.                         "<td>".$contactInfo."</td>".
    16.                         "<td>".$problemDescription."</td>".
    17.                         //$typeProblemList. "  ".
    18.                         "<td>".$inn."</td>".
    19.                         "<td id='orgdata'><a href='#myModalBox' data-id='ISBN564541' class='sendata'  data-toggle='modal'>".$name."</a></td>"
    20.                        ;
    21.             }
    22.         catch (Exception $e)
    23.         {
    24.                 print_r($e);
    25.         }
    26.     }
    И все это в цикле работает этот метод как бы одну строку с формой генерит и таких может быть сколько угодно
     
  15. servitpol

    servitpol Новичок

    С нами с:
    17 авг 2016
    Сообщения:
    63
    Симпатии:
    3
    Не совсем теперь понятно что конкретно из этой формы Вам надо. Но я могу предположить что это $name. Я бы сделал следующим образом эту строку таблицы:
    PHP:
    1. "<td class="orgdata"><a href="#myModalBox" data-id="ISBN564541" id="'.$name.'" class="sendata"  data-toggle="modal">"'.$name.'"</a></td>"
    Код (Javascript):
    1. $(document).on('click', '.sendata', function() {
    2.             var id = $(this).attr("id");
    3.             alert(id);
    4. });
     
  16. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    В чем проблема в этой же функции задавать уникальный айди?
    В чем проблема в этой же функции прописывать каждому элементу свой собственный обработчик события?
    В чем проблема повесить обработчик без жиквери?
     
  17. Sergey_Tsarev

    Sergey_Tsarev Активный пользователь

    С нами с:
    17 мар 2016
    Сообщения:
    502
    Симпатии:
    105
    ID для того и придумано, что бы быть уникальным. Поэтому на странице только один элемент должен иметь например id="name". Задавай в цикле уникальный id и все у тебя будет работать.

    Например:
    PHP:
    1. for($i = 0; $i <= 5; $i++) {
    2. echo '<div class="text" id="textbox_'.$i.'">Hello!</div>';
    3. }
    4.  
    5. //получим
    6.  
    7. <div class="text" id="textbox_0">Hello!</div>
    8. <div class="text" id="textbox_1">Hello!</div>
    9. <div class="text" id="textbox_2">Hello!</div>
    10. <div class="text" id="textbox_3">Hello!</div>
    11. <div class="text" id="textbox_4">Hello!</div>
    12. <div class="text" id="textbox_5">Hello!</div>
     
    #17 Sergey_Tsarev, 23 апр 2017
    Последнее редактирование: 23 апр 2017