JQuery AJAX сообщение об успешном возвращении данных - PullRequest
1 голос
/ 15 мая 2011

Не могу вернуть свои данные, вот мой код. в чем проблема? Спасибо.

Index.php

<script type="text/javascript">     
jQuery(document).ready(function(){
    $(".click").click(function(){
        var value = $(this).val();// post each click value to another page
     $.ajax({
         url: "post.php", 
         dataType: "html",
         type: 'POST', //I want a type as POST
         data: "name="+value, 
         success: function(data){ 
            $("#result").data($data); 
         }
      });
    });
});
</script>

<div id="result"></div>
<a href="#" class="click">tim</a>
<a href="#" class="click">tom</a>
<a href="#" class="click">jimmy</a>

post.php

<?php
$name=trim(addslashes(htmlspecialchars(rawurldecode($_POST["name"]))));
$data .='Your name is '.$name;
$data .='how do you do';
echo $data;// how to return all the html in post.php? or return $data part? 
?>

Ответы [ 3 ]

5 голосов
/ 15 мая 2011

Видите проблему?

...
success: function(data){ 
    $("#result").data($data); 
}
...

Вы берете данные как data, но пытаетесь получить к ним доступ как $data, что является другой неинициализированной переменной.

Также,Вы не можете использовать .val() для элемента a, вместо этого используйте .html(), чтобы получить внутренний HTML.Возможно, вы также захотите использовать .html() вместо .data() на #result.

В противном случае ваш пример выглядит хорошо.

4 голосов
/ 17 октября 2012

должно быть:

success: function(data) {

    $("#result").html(data);
}
2 голосов
/ 15 мая 2011

Похоже, у вас есть дополнительный знак доллара в переменной $data, должен быть:

success: function(data) {
    $("#result").data(data);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...