-2

誰かがこれを見て、私が呼び出そうとしているphpページをここのコードがロードしない理由を教えてもらえますか?

<script src="_js/jquery-1.7.2.min.js"></script>     <!-- Linking jQuery -->
<script>                        
$(document).ready(function() {
$('.answer').click(function(e) {
var color = $(this).attr("data-color");
$.ajax({
type: "POST",
url: "test.php",
data: '{ color: "'+color+'" }',
success: function(data){ alert(data); }
error: function (jqXHR) {
...
}
})
})
})
</script>

これをトリガーするリンクは....

<div id="red" data-color="red" class="answer">
<a href="#"><img src="images/red.jpg" width="100%" /></a>
</div>



<div id="blue" data-color="blue" class="answer">
<a href="#"><img src="images/blue.jpg" width="100%" /></a>
</div>

Test.PHP は、POST の内容を読むことができるようにするためのものです。

<?php
     print_r($_POST);
?>
4

2 に答える 2

2

data: '{ color: "'+color+'" }',私の推測では、あなたはに変更する必要があると思いますdata: { color: color},

正気を保つために、次のように変更$(this).attr("data-color");します$(this).data("color");

多分このようなもの:

(function($){
    $(document).ready(function() {
        $('.answer').click(function(e) {
            var color = $(this).data("color");
            $.ajax({
                type: "POST",
                url: "test.php",
                data: { color: color}
            }).done(function ( data ) {
                alert(data);               
            }).fail(function () {
                alert("FAILED!");               
            });
        });
    });
})(jQuery);
于 2013-03-04T20:17:46.587 に答える
1
$.ajax({
    type: "POST",
    url: "test.php",
    data: { color: color },
    success: function(data){ alert(data); },
    error: function (jqXHR,text) {
        alert(text);
    }
});
于 2013-03-04T20:22:57.957 に答える