Показать сообщение отдельно
  #1 (permalink)  
Старый 06.03.2014, 14:03
Новичок на форуме
Отправить личное сообщение для tot18 Посмотреть профиль Найти все сообщения от tot18
 
Регистрация: 06.03.2014
Сообщений: 3

Не передается форма в выводе результатов через ajax
Всем привет! Недопонимаю я вот чего.
Есть функция:
function showHint(str){
    if(str.length == 0){
        document.getElementById("search_area").innerHTML = "";
        return;
    }
    if (window.XMLHttpRequest){ // IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp = new XMLHttpRequest();
    }else{ // for IE6, IE5
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange = function(){
        if (xmlhttp.readyState == 4){
            if (xmlhttp.status == 200){
                document.getElementById("search_area").innerHTML = xmlhttp.responseText; 
            }else{
                alert('Ошибка'); 
            }
        }else{
           document.getElementById("search_area").innerHTML = 'Loading...';
        }
    }
    xmlhttp.open("POST", "search.php?i=" + str, true);
    xmlhttp.send();
}

Запрос выполняется как надо, но в выводе результата запроса есть форма которая так же в дальнейшем обрабатыватся.

код search.php
<table >
					<tr>
					
						<td>поле 1</td>
						<td>поле 2</td>
						<td>поле 3</td>
						<td>поле 4</td>
					</tr>
						<?php 
						$i=1;
						foreach($query as $t){?>

							<form method="post" action="" >

								
					<tr >
					<td><b><?php echo $t["name1"]."</b><br />";
					echo "&nbsp;&rarr; $t["name2"];?></td>
					<td><?php echo $t["name3"];?></td>
					<td><?php echo$t["name4"];?></td>
					<td>
<input type="hidden" name="name" value="<?php echo $t["name1"];?>" />
<input type="submit" name="add-button" value="Добавить"  /></td>
</tr>

							</form>

						<?php }?>
				</table>

Обратите внимание, что в выводе результат работы ajax есть форма!
Так вот, суть проблемы в том, что эта самая форма на уже готовой странице НЕ РАБОТАЕТ.
Исходный код построенной таблицы примерно следующий:

<table>
<form></form> !!!!
<tr><td>....</td></tr>
<form></form> !!!!
<tr><td>....</td></tr>
</table>

То есть, строка не оборачивается в тег form. Стоит закомментировать тег form, так он сразу отображается на своих местах.
Вот и сам вопрос: как решить эту проблему?

PS: Буду благодарен за любую помощь и, прошу, сильно не пинайте.

Спасибо!
Ответить с цитированием