Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Проблемы с получение данных с сервера... (https://javascript.ru/forum/jquery/42109-problemy-s-poluchenie-dannykh-s-servera.html)

Kandiar 13.10.2013 10:05

Проблемы с получение данных с сервера...
 
Здравствуйте, проблема следующая:
Не получаю ответа от сервера когда вызываю $.post по событию. А когда сразу при загрузке странице вызываю $.post, данные с сервера успешно присылаются.
function x()
		{
			$.post('ajax.php', {
					prm1: 1
				}, function(data){
					alert(data);
				});
		}

<a href = "javascript:x()">Отправить данные на сервер</a>

AJAX.PHP
<?php
	if(isset($_POST['prm1']))
	{
		echo "Данные успешно отправлены!";
	}
?>

Из-за чего так?

Deff 13.10.2013 14:23

Цитата:

Сообщение от Kandiar
<a href = "javascript:x()">Отправить данные на сервер</a>

Замените на
<a href="#" onclick="x(); return false;">Отправить данные на сервер</a>


Переменную x - лучше удлинить для уникальности имени, к примеру x_ajax ()

Kandiar 13.10.2013 16:24

Цитата:

Сообщение от Deff (Сообщение 276201)
Замените на
<a href="#" onclick="x(); return false;">Отправить данные на сервер</a>


Переменную x - лучше удлинить для уникальности имени, к примеру x_ajax ()

Что href = "javascript:x()", что onclick = "x()" работает.
Тот пример, который я написал, он работает. Название функции такое потому, что это я написал здесь. Не хотел свой скрипт копировать сюда. (Канешно же я понимаю, что лучше называть осмыслено)
Проблема в другом. Если на ссылку вещать событие onclick, то работает, а вот если на <button> вещать нет(Данные на сервер посылаются, но ответ от сервера, JS не получает)
Когда <a href = "javascript:x()">Отправить данные на сервер</a> - работает
Когда <button onclick = "x()">">Кнопка</button> - НЕ РАБОТАЕТ

Deff 13.10.2013 16:28

<button type="button" onclick="alert('button click'); return false;">Отправить данные на сервер</button>

Kandiar 13.10.2013 16:32

Цитата:

Сообщение от Deff (Сообщение 276235)
<button type="button" onclick="alert('button click'); return false;">Отправить данные на сервер</button>

У меня не работает $.post через button. А alert и другие функции работают.
Когда я жму button, данные на сервак летят, но ответ JS не получает

Kandiar 13.10.2013 16:38

WTF Я сейчас с нуля написал в новом документе и все работает.

У меня вот так в скрипте
$(function(){
				$('.take_friendship').on('click', function(){
					$.post('ajax.php', {
						take_friendship: 1,
						user_id: $(this).attr('name')
					}, function(data){
						alert(data);
					});
				});
			});

<button class = "btn_z take_friendship" name = "<?=$user_id?>">Добавить в друзья</button>
Вот это не работает. В чем тут проблема?

Deff 13.10.2013 16:48

<script>
function  x_ajax (){
$.post('ajax.php', {
 prm1: 1
 }, function(data){
 alert(data);
});
}
</script>
<button type="button" onclick=" x_ajax ()">Отправить данные на сервер</button>

Deff 13.10.2013 16:50

Цитата:

Сообщение от Kandiar
В чем тут проблема?

$('.take_friendship').bind('click', function(){
$('.take_friendship').unbind('click');
 ....
}

Kandiar 13.10.2013 16:52

Цитата:

Сообщение от Deff (Сообщение 276240)
<script>
function  x_ajax (){
$.post('ajax.php', {
 prm1: 1
 }, function(data){
 alert(data);
});
}
</script>
<button type="button" onclick=" x_ajax ()">Отправить данные на сервер</button>

Это работает, я не понимаю почему прошлое не работает?

Kandiar 13.10.2013 16:55

Цитата:

Сообщение от Deff (Сообщение 276241)
$('.take_friendship').bind('click', function(){
$('.take_friendship').unbind('click');
 ....
}

Не, это не работает


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