@marq

Как передать по ajax?

Есть таблица, в ней из бд, вытаскиваю через foreach, так же внутри таблицы есть форма данные передаю через ajax, проблема в том, что при первой отправке, оправляется нормально без перезагрузи, а дальше страница перезагружается
<tr>
    		<th>Название</th>
        <th>Просмотр</th>
    </tr>
     <thead>
  	
    <?foreach($file_info as $file):?>
    
    <tr><td><a href="" ><?=$file['name']?></a></td  >

    <td width="auto"><form id="gethash" >
        <input type="hidden" name="name" value="<?=$file['hash_name']?>">
        <input type="submit">
    </form></td>
    </tr>
    <?endforeach;?>

$('#gethash').submit(function(e){
   e.preventDefault();
    $.ajax({
       type:'POST',
        url: base_url + 'ajax.php',
         data: $(this).serialize(),
        success: function (data){
         $('#test').html(data);
        }
    });
  });


А не, проблема в другом, ajax срабатывает только на первом элементе массива
  • Вопрос задан
  • 48 просмотров
Решения вопроса 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
form id="gethash" - это тупость, так как по стандарту ид является уникальным для документа, а у вас их получилось дохрена. Поменяйте на класс и будет вам "щасте".
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Arik
https://api.jquery.com/on/

вешаем на какого нибудь родителя submit ребенка
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы