JQuery AJAX размещения - PullRequest
       7

JQuery AJAX размещения

0 голосов
/ 12 февраля 2011

Привет всем, я не могу заставить работать простой ajax между страницей php и jquery. Я следовал за несколькими уроками. но с трудом понимая, что на самом деле происходит.

Javascript (JQuery)

$(function(){
    $('#trigger').click(function(){
        askajax;
    });

    function askajax(){
        $.post("ask.php",{ question: "canuseeme" } ,function(data)
        {
          if(data=='yes')
          {
            alert("answer is yes");
          }
          else
          {
            alert("answer is no");
          }
       });
    }
});

PHP:

if($_POST['question']){
    echo "yes";
} else {
    echo "no";
}

Есть идеи, ребята?

РЕДАКТИРОВАТЬ: СПАСИБО @Jacob

$('#trigger').click(function(){

        alert("doing ajax"); // THIS SHOWS
        $.post("ask.php",{ question: "canuseeme" }, function(data)
        {
          if(data=='yes')
          {
            alert("answer is yes"); // THIS DOESNT
          }
          else
          {
            alert("answer is no"); // THIS DOESNT
          }
       });
    });

Ответы [ 2 ]

3 голосов
/ 12 февраля 2011

Это будет работать:

$('#trigger').click(askajax);

Или это:

$('#trigger').click(function() {
   askajax();
});

Но я предпочитаю делать это так:

$(function(){
    $('#trigger').click(function(){
        $.post("ask.php",{ question: "canuseeme" } ,function(data)
        {
          if(data=='yes')
          {
            alert("answer is yes");
          }
          else
          {
            alert("answer is no");
          }
       });
    });
});

Причина в том, чтоВы никогда больше не используете функцию askajax, и она будет определена только в области действия функции ready, так зачем вообще беспокоиться об определении автономной функции?Просто используйте анонимную функцию и покончите с этим.:)

1 голос
/ 12 февраля 2011

В строке 3 измените askajax; на askajax();

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...