如何使用ajax php发送锚的值

问题描述 投票:0回答:1

我正在尝试使用jquery将几个锚点的值发送到php文件,但是我没有从php脚本获得回调。

<div class="result"></div>

<a href="#" value="5" class="star">Star 5</a>
<a href="#" value="4" class="star">Star 4</a>
<a href="#" value="3" class="star">Star 3</a>
<a href="#" value="2" class="star">Star 2</a>
<a href="#" value="1" class="star">Star 1</a>

jquery:

$('a').on('click', function(e) {
    e.preventDefault();

    var star = $(".star").val();

    $.ajax({
        url: 'process.php',
        type: 'POST',
        data: {
                star:star                           
                },

        success: function(data){
            $('.result').html(data);                        
        }       
    });
});

和php(process.php):

if (isset($_POST['star'])) {        
    $star = $_POST['star'];
    echo $star;

}

我在做什么错?

我想要实现的目标:单击“星级5”,给我返回值“ 5”。单击“星号4”,给我返回值“ 4”,依此类推...

php jquery ajax anchor
1个回答
0
投票

value不是<a>标记的可接受属性,您可以在https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a上查看可用的属性>

我建议:

<div class="result"></div>

<a href="#" data-value="5" class="star">Star 5</a>
<a href="#" data-value="5" class="star">Star 4</a>
<a href="#" data-value="5" class="star">Star 3</a>
<a href="#" data-value="5" class="star">Star 2</a>
<a href="#" data-value="5" class="star">Star 1</a>

<script>
$('a').on('click', function(e) {
    e.preventDefault();

    var star = $(".star").data('value');

    $.ajax({
        url: 'process.php',
        type: 'POST',
        data: {star:star},
        success: function(data){
            $('.result').html(data);                        
        }       
    });
});
</script>
© www.soinside.com 2019 - 2024. All rights reserved.