За последние 24 часа нас посетил 15741 программист и 1664 робота. Сейчас ищут 818 программистов ...

Input, 2 одинаковых name. Ajax

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

  1. Horus1613

    Horus1613 Новичок

    С нами с:
    25 май 2017
    Сообщения:
    34
    Симпатии:
    0
    Мне нужно в ajax в зависимости от того, в каком из этих input'ов checked, присвоить переменной значение 1 или 2. Проблема в том, что у них одинаковый name, но переименовывать их нельзя, иначе некорректно будет работать переключатель. Сдвинуть form только на один input тоже нельзя. Как можно решить проблему? Может можно как-то отправлять в ajax только один из input'ов?

    Код (Text):
    1. <form action="/ajax/service/edit" method="post" id="form" data-ajax="true" enctype="multipart/form-data">
    2. ......
    3.  
    4. <fieldset class="switch">
    5. <input type="radio" checked name="switch-1" id="switch-radio-off-1" class="switch-radio switch-radio-off">
    6. <label for="switch-radio-off-1" class="switch-label switch-label-off">
    7. Выкл.
    8. <span class="switch-slider">значение1</span>
    9. </label>
    10. <input type="radio" name="switch-1" id="switch-radio-on-1" class="switch-radio switch-radio-on">
    11. <label for="switch-radio-on-1" class="switch-label switch-label-on">
    12. Вкл.
    13. <span class="switch-slider">значение2</span>
    14. </label>
    15. </fieldset>
    16. .......
    17. </form>
     
  2. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.866
    Симпатии:
    753
    Адрес:
    Татарстан
    А где аякс код?
    По сути обращайтесь по class и делаете чего хотите
    Код (Javascript):
    1. $(".switch-radio").on("change",function() {
    2.   console.log($(this));
    3. })
     
  3. Horus1613

    Horus1613 Новичок

    С нами с:
    25 май 2017
    Сообщения:
    34
    Симпатии:
    0
    У меня в php...
    Обычно я делаю так:
    if (isset($_POST['name']))...
    Но тут 2 одинаковых name, и это условие всегда будет true
     
  4. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.984
    Симпатии:
    759
    Код (Javascript):
    1. var switch1 = $('input[name="switch-1"]:checked').val();
     
  5. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.866
    Симпатии:
    753
    Адрес:
    Татарстан
    при чем тут Аякс? вы технологию то понимаете?
    Или думаете если в пути к обраотчику формы написали Ajax - случится чудо?
    Если форма простая -выставьте value="on" и value="off" во втором
    и увидите чудо - вам будет приходить значение именно выбранного радиобатонна несмотря на одинаковое имя
    А про аякс почитайте - что это и для чего
     
  6. Horus1613

    Horus1613 Новичок

    С нами с:
    25 май 2017
    Сообщения:
    34
    Симпатии:
    0
    Хах))))))))))
    Спасибо большое, работает!!!))