Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Не могу отправить ajax запрос (https://javascript.ru/forum/jquery/50467-ne-mogu-otpravit-ajax-zapros.html)

rogodessa 27.09.2014 12:58

Не могу отправить ajax запрос
 
День добрый все!

Господа знатоки, помогите найти проблему.
Не удается отправить ajax запрос. Код следующий
<script type="text/javascript">	
		
		function make_main_group() { 
				
				$.ajax({
					url: "ajax/ajax_add_project.php",
					type: "POST",
					dataType: "json",
					data: {"num": "test"},
					success: function(data) {
					  $("#test").html(data["num"]);	 
					}
				  });
		}
		
		
</script>


потом вешаю на кнопку onclick
<button onclick="make_main_group()" type="submit" class="btn btn-default" >Создать</button>


но при нажатии почему то скрипт не выполняется.
НО!!! если сразу запустить скрипт (без клика)
make_main_group();

то все нормально - ответ от обработчика получает.

Думал, может какой-то иных подключенных скриптов мешает выполнению. Отключил все. Остались jquery и скрипт выше.

Заранее благодарен за оказанную помощь!

rogodessa 27.09.2014 13:11

Да, и если повесить onclick="make_main_group()" на обычную ссылку, тоже все нормально.
Почему по нажатию на кнопку внутри формы не выполняется?

bes 27.09.2014 13:56

потому что нужно отдавать ответ json-ом

rogodessa 27.09.2014 14:21

Обработчик и отдает ответ как
die(json_encode( array('num'=>$_POST['num']) ));


если бы там не было json ответа, то и при вызове функции make_main_group(); (без onclick) тоже не было бы ответа. А ответ возвращается.

Или я вас не правильно понял?

bes 27.09.2014 16:11

Цитата:

Сообщение от rogodessa
Или я вас не правильно понял?

ты не привел возвращаемый результат (и в целом, нормальный пример all in one), поэтому единственным вариантом неработоспособности этого примера мог быть только неправильный ответ
по строчке
Цитата:

Сообщение от rogodessa
die(json_encode( array('num'=>$_POST['num']) ));

так оно и оказалось
добавь echo и будет тебе счастье

PS: на самом деле пример абсолютно рабочий

rogodessa 27.09.2014 18:29

bes, спасибо!

echo помогло :(

bes 27.09.2014 22:09

Цитата:

Сообщение от rogodessa
echo помогло

дело не в echo, очевидно, у тебя ошибка совсем в другом месте


Часовой пояс GMT +3, время: 17:29.