2009-11-19 2 views
0
<script type='text/javascript'> 
$("#cart").click(function() { 
var loadUrl = "ajax_redirect.php"; 
var val = "2"; 
$.post(loadUrl, 
{ page: "cart", data: val }, 

    function(data) 
    { 
alert(data); 
    alert("Course added to Cart"); 
    } 
); 
}); 
</script> 
<body> 
`<a class="button" id="cart" href="#" title="Apply"><img src="images/button.png" alt="apply" />Apply</a>` 
</body> 

Если я нажимаю ссылку <a>, ничего не происходит, но освежает. Я не могу получить значение возвращаемых данных.Метод Ajax Post с использованием jquery

ответ

1

Ваш скрипт запускается до того, как элемент a существует и готов в DOM. Вы должны быть обернуты всю вещь в $(document).ready() вызова, например, так:

$(document).ready (function() { 
    $("#cart").click(function(event) { 
     event.preventDefault(); 
     var loadUrl = "ajax_redirect.php"; 
     var val = "2"; 
     $.post(loadUrl, 
      { page: "cart", data: val }, 
      function(data) 
      { 
       alert(data); 
       alert("Course added to Cart"); 
      } 
     ); 
    }); 
}); 

Также обратите внимание на event.preventDefault(), чтобы предотвратить связь делать это действие по умолчанию

+0

Спасибо Prime, но одна страница сомнения перенаправляет на запрошенный url, но я не могу получить значение запроса. функция alert (data) не работает. Я получаю значение $ _POST ['page'], $ _POST ['data'] – sathish

+0

К сожалению, вы имеете в виду, что ваш backend (PHP) не может прочитать параметры, которые вы передали? Или что Javascript не может получить данные, которые вы передали? –

+0

Этот ответ очень помог мне в моем первом запуске в AJAX, используя jQuery! Хорошее шоу! – 2009-11-20 21:15:30

Смежные вопросы