繁体   English   中英

数据未通过JQuery AJAX请求传递

[英]Data not passing via JQuery AJAX request

我对此感到沮丧,无法获取数据。 萤火虫向我展示

信=

我努力了

data: {letter: alpha},

data:"letter=" + alpha, 

没有成功。

脚本如下:

$(document).ready(function(){
    $('#alphaFilter a').click(function(e){
        e.preventDefault();
        var alpha = $(this).val();
        $.ajax({
            type: "POST",
            data: {letter: alpha},
            url: "includes/filterPlants.php",
            success: function(update){
                $('#plants').html(update);
            }
        });
    });
})

我下面的HTML元素(基本上我想过滤数据集而不刷新页面):

<div id="alphaFilter">
    <a href="#" value="All">All</a>
    <a href="#" value="A">A</a>
    <a href="#" value="B">B</a>
    <a href="#" value="C">C</a>
    <a href="#" value="D">D</a>
    <a href="#" value="E">E</a>
    <a href="#" value="F">F</a>
    <a href="#" value="G">G</a>
    <a href="#" value="H">H</a>
    <a href="#" value="I">I</a>
    <a href="#" value="J">J</a>
    <a href="#" value="K">K</a>
    <a href="#" value="L">L</a>
    <a href="#" value="M">M</a>
    <a href="#" value="N">N</a>
    <a href="#" value="O">O</a>
    <a href="#" value="P">P</a>
    <a href="#" value="Q">Q</a>
    <a href="#" value="R">R</a>
    <a href="#" value="S">S</a>
    <a href="#" value="T">T</a>
    <a href="#" value="U">U</a>
    <a href="#" value="V">V</a>
    <a href="#" value="W">W</a>
    <a href="#" value="X">X</a>
    <a href="#" value="Y">Y</a>
    <a href="#" value="Z">Z</a>
</div>

在此先感谢您,我相信这对您来说非常简单。

value属性和jQuery的.val()仅真正用于<form>元素,例如<input>

对于其他元素类型,可以使用data-*属性存储自定义信息:

<a href="#" data-value="A">A</a>

并使用jQuery的.data()检索它们的值:

var alpha = $(this).data('value');

我认为您的HTML无效(我不认为锚标记支持value属性)。 另外,jQuery val方法不会在您的定位标记中获取value属性的内容。

如果需要,可以使用HMLT5 data- *属性:

<a href="#" data-value="A">A</a>

$(function(){

    $('#alphaFilter a').click(function(e){
        e.preventDefault();
        var alpha = $(this).attr('data-value');

        $.ajax({
            type: "POST",
            data: {letter: alpha},
            url: "includes/filterPlants.php",
            success: function(update){
                $('#plants').html(update);
            }
        });

    });

})

编辑

正如注释中所指出的那样,jQuery .data()方法也可以用于此目的。 这两个都将获取“数据值”的值:

$(this).data("value");

//or

$(this).attr("data-value");
var alpha = $(this).attr("value")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM