Php — как получить и отправить ссылку href по нескольким классам

У меня есть список элементов с тем же именем класса - "fileLink"

Когда я отправляю форму ниже, я хотел бы отправить через AJAX список URL-адресов файлов в файл AJAX (и адрес электронной почты, который вводит пользователь).

Как отправить массив по имени класса в файл ajax?

<ul class = "feeds" id = "filesList">

    <li>
        <a href = "http://file_folder/3604.jpg" target = "_blank" class = "fileLink">356458.e109abcc152f2536b969b32f6e8439e5</a>
        <span class = "text-muted">DOC</span>
    </li>                                       
    <li>
        <a href = "http://file_folder/3605.jpg" target = "_blank" class = "fileLink">357161.e4948db1d64c88b9396647aaa89a7f10</a>
        <span class = "text-muted">jpg</span>
    </li>                                       
    <li>
        <a href = "http://file_folder/3606.jpg" target = "_blank" class = "fileLink">357213.e109abcc152f2536b969b32f6e8439e5</a>
        <span class = "text-muted">jpg</span>
    </li>   


   <form class = "form-inline m-t-20" action = "#" id = "#emailFile-form">

       <a href = "#" type = "submit" class = "btn btn-default" id = "emailFile_btn">SEND</a>
   </form>

</ul>
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
0
66
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я думаю, его рабочий пример поможет вам начать: jsfiddle

Во-первых, вам нужно исправить html-код для вашего form:

<!-- not correct: id = "#emailFile-form" -->
<form class = "form-inline m-t-20" action = "#" id = "emailFile-form">
  <!-- use input or button to send form, not a -->
  <button href = "#" type = "submit" class = "btn btn-default" id = "emailFile_btn">SEND</button>
</form>

Затем вам нужна функция JS, которая прослушивает отправку формы, а затем получает ссылки с указанным именем класса:

// get form element
var form = document.getElementById("emailFile-form");
// form controller
form.onsubmit = function(e){
  // stop form from sending
  e.preventDefault();
  var list = [];
  // grab all the links with class .fileLink
  var links = document.getElementsByClassName("fileLink");
  // put all links in the: list
  for (var i=0; i<links.length; i++)
    list.push( links[i].href );
  // send the list by ajax function
  ajaxSend(list);   
};

Кроме того, не забывайте, что вам нужно определить функцию, которая выполняет фактическую работу ajax:

function ajaxSend(data) {
    /** insert ajax code here **/
  alert("links: "+data.join(","));
}

Узнайте об отправке данных через ajax здесь:

документация по jQuery.ajax()

или здесь:

Как сделать вызов AJAX без jQuery?

Другие вопросы по теме