Функция Ajax не вызывается при включении - PullRequest
0 голосов
/ 29 мая 2010

У меня есть функция ajax, которая не запускается, когда сценарий ajax включен в мою HTML-страницу, например:

<script type='text/javascript' src='ajax.js'></script>

Однако, если я помещаю точно такой же скрипт в часть head HTML-страницы, он запускается.

Почему это происходит и как я могу это исправить?

<script type="text/javascript"> 
        $(function() {

            $(".a").click(function() 
            {    
                  $.ajax({
                     type: "POST",
                     url: "1.php",
                     data: dataString,
                     cache: false,
                     success: function(html)
                       {
                           //stuff
                       }  
                   });

                return false;
            });

        });

</script> 

Ответы [ 2 ]

1 голос
/ 29 мая 2010

Это может показаться тривиальным, но вы удалили теги <script> при использовании его во внешнем файле .js?

Содержимое вашего ajax.js файла должно просто быть:

$(function() {
  $(".a").click(function() {    
    $.ajax({
      type: "POST",
      url: "1.php",
      data: dataString,
      cache: false,
      success: function(html)
      {
        //stuff
      }  
    });
    return false;
  });
});

У меня сложилось впечатление, что когда вы упомянули " в точности ", вы оставили теги сценария без изменений в файле ajax.js.

Также, если это все еще не работает. попробуйте добавить строку alert("hello"); вверху ajax.js перед всем, чтобы увидеть, работает ли она на всех .

0 голосов
/ 29 мая 2010

Я сделал пример, который работал хорошо для меня. Я не вижу никаких проблем, так что я предполагаю, что это опечатка или что-то глупое.

вот пример кода, который я использовал:

HTML: // дважды проверяем эти пути

<body>
<a class="a" href="#">clicky</a>
</body>

Javascript:

$(function() {
// i noticed you put .a here instead of a, i am assuming you are referring the class
$(".a").click(function() 
{    
    alert("1");
      $.ajax({
         type: "POST",
         url: "1.php",
         data: "html",
         cache: false,
         success: function(data)
           {
         //stuff
         $("body").html(data);
           }  
       });

    return false;
});

}); * +1011 *

PHP:

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