ajax в php loop выполняет действие при нажатии кнопки

поэтому у меня есть php loop, я использую jQuery slide toggle, чтобы скрыть / показать таблицу с результатами sql. в настоящее время таблица загружается только с использованием php, но по мере того, как происходит много проблем, связанных с загрузкой, мне нужно запустить ajax с помощью переключателя слайдов btn, поэтому он запрашивает текущие данные о деталях при нажатии кнопки. я могу заставить его вызвать php-файл из jquery, но им трудно передать значение для каждого элемента, поэтому он может выполнить запрос в базе данных. вот как выглядит содержимое петли php foreach;

<span class="searchitem"> // some visible content here <span value="item name" class="btn">button</span> <span class="slide_area"> // hidden slide content ajax needs to populate with php result </span> </span> 

этот html повторяется, я использую jquery slidetoggle, чтобы скрыть слайд-каталог, что мне нужно сделать, это заполнить слайд-панель с результатами из php, php-файл нуждается в имени, чтобы вернуть результаты, имя передается через get с URL-адресом, поэтому я только нужно добавить URL-адрес с фактическим именем из значения btn, я уверен, что это не может быть так сложно, но вот я.

вот jquery:

 <script type="text/javascript"> //<![CDATA[ $(document).ready(function () { $('.searchitem').each(function () { $(this).find('.slide_area').hide(); $(this).find('.btn').click(function () { var ajax_load = "<img src='images/spinner.gif' style='width:50px;' alt='loading...' />"; var loadUrl = "ajax/item.php?name="; var loadName = $(".btn"); var Name = URLEncode(loadName); var loadString = loadUrl + Name; $(this).parent().find('.slide_area').slideToggle(1500).html(ajax_load).load(loadString); }); }); }); //]]> </script> 

Мне нужно получить значение из btn и добавить loadURL, im открыть для отправки данных другим способом, например, через сообщение, если это необходимо, обновил jquery, все еще не работающий, что я делаю неправильно здесь?

Благодарю.

Самый простой способ – использовать библиотеку Phery http://phery-php-ajax.net/. Ключевым моментом здесь является data-phery-remote="toggle" который автоматически вызовет функцию PHP при щелчке и может быть повторно использован везде

 <span class="searchitem"> // some visible content here <span value="item name" data-phery-remote="toggle" class="btn">button</span> <span class="slide_area"> // hidden slide content ajax needs to populate with php result </span> </span> 

Логика меняется на противоположную, загрузка будет происходить только с одним вызовом AJAX вместо двух.

 Phery::instance()->set(array( 'toggle' => function($data){ $r = new PheryResponse; /* do your code, fill $html_content */ $r->this()->siblings('.slide_area')->html($html_content)->toggle(); return $r; } ))->process(); и Phery::instance()->set(array( 'toggle' => function($data){ $r = new PheryResponse; /* do your code, fill $html_content */ $r->this()->siblings('.slide_area')->html($html_content)->toggle(); return $r; } ))->process();