За последние 24 часа нас посетил 15251 программист и 1628 роботов. Сейчас ищет 1131 программист ...

Отправить данные в js

Тема в разделе "PHP для новичков", создана пользователем l_2001, 7 май 2025 в 16:27.

  1. l_2001

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

    С нами с:
    9 дек 2014
    Сообщения:
    84
    Симпатии:
    3
    Здравствуйте! я не силён в js, потому обращаюсь к знающим... есть такая конструкция
    Код (Text):
    1. $innerHTML .= '<td align = "center" style="font-size: small">' . ($adr);
    2.                 $innerHTML .= '<td><input id="rem" type="text" name="rem" class="rem" size="12" value=""/></td>';
    3.                 $innerHTML .= "<td align='center'><button type='button' class=\"c\" href=\"#\" onClick=\"get_Update($adr, rem, 'noactual', this);\">Неактуальна.</button></td>";
    4.                 $innerHTML .= "<td align='center'><button type='button' class=\"c\" href=\"#\" onClick=\"get_Update($adr, rem, 'delete', this);\">Удалить.</button></td>";
    В get_Update($adr, rem, 'delete', this) все данные, кроме rem, присутствуют, а вот rem - обычное текстовое поле, куда юзер заносит свой ремарк, но value поля rem в ($adr, rem, 'delete', this) не попадает! Собственно и вопрос - как его засунуть в отправку? Заранее спасибо!
     
  2. acvatoris

    acvatoris Новичок

    С нами с:
    2 июн 2024
    Сообщения:
    8
    Симпатии:
    0
    В вашей таблице в каждой строке поля ввода
    PHP:
    1. $innerHTML .= '<td><input id="rem" type="text" name="rem" class="rem" size="12" value=""/></td>';
    в качестве id используется одно и тоже значение id="rem".

    Передав этот параметр в функцию get_Update, вы захотите получить DOM элемент поля ввода, например так :
    Код (Javascript):
    1. const inputItem = document.getElementById("rem")
    , но так как у вас все строки таблицы имеют один и тот же идентификатор, то inputItem - это будет самое первое поле в вашей таблице, а не текущее. Html спецификция требует, чтобы на странице id были уникальны (https://html.spec.whatwg.org/multipage/dom.html#the-id-attribute)

    Попробуйте изменить значение id "rem" на некое другое значение, скажем добавьте к rem - номер строки. Будет что-то типа:
    rem1 - первая строка
    rem2 - вторая строка
    и именно этот параметр передайте в функцию. Получиться вот такой код:

    Код (Text):
    1.  
    2. $innerHTML .= '<td align = "center" style="font-size: small">' . ($adr);
    3.                 $innerHTML .= '<td><input id="rem1" type="text" name="rem" class="rem" size="12" value=""/></td>';
    4.                 $innerHTML .= "<td align='center'><button type='button' class=\"c\" href=\"#\" onClick=\"get_Update($adr, rem1, 'noactual', this);\">Неактуальна.</button></td>";
    5.                 $innerHTML .= "<td align='center'><button type='button' class=\"c\" href=\"#\" onClick=\"get_Update($adr, rem1, 'delete', this);\">Удалить.</button></td>";