Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将两个变量与生成的数字进行比较_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript 将两个变量与生成的数字进行比较

Javascript 将两个变量与生成的数字进行比较,javascript,jquery,ajax,Javascript,Jquery,Ajax,目前我学习了PHP的曲线,并首次尝试对我的PHP脚本发出AJAX请求。为了学习,我在自己的书面商店里买了一个购物车,它为每个职位生成具有相同“数据id”属性的按钮和输入字段。当然,输入字段获得了当前产品数量的“值”属性 代码: Jquery: $(document).ready(function() { $(".btn").click(function () { var id = $(this).attr("data-id"); var idInput =

目前我学习了PHP的曲线,并首次尝试对我的PHP脚本发出AJAX请求。为了学习,我在自己的书面商店里买了一个购物车,它为每个职位生成具有相同“数据id”属性的按钮和输入字段。当然,输入字段获得了当前产品数量的“值”属性

代码:

Jquery:

$(document).ready(function() {
    $(".btn").click(function () {
        var id = $(this).attr("data-id");
        var idInput = $(".field").attr("data-id");
        var value = $(".field").attr("value");
        if (id === idInput) {
            $.post("/cart/addAjax/" + id, {}, function (data) {
                $("#cart-count").html(data);
            });
            $.post("/cart/addAjax/" + value, {});
            return false;
        } else {}
    });
});
PHP生成的HTML的输入示例:

            <input class="field" data-id="3" type="number" value="23">
            <button class="btn" data-id="3">Quantity</button>

            <input class="field" data-id="14" type="number" value="3">
            <button class="btn" data-id="14">Quantity</button>

            <input class="field" data-id="17" type="number" value="2">
            <button class="btn" data-id="17">Quantity</button>

            <input class="field" data-id="18" type="number" value="8">
            <button class="btn" data-id="18">Quantity</button>

            <input class="field" data-id="19" type="number" value="10">
            <button class="btn" data-id="19">Quantity</button>

量
量
量
量
量
我希望Jquery脚本比较输入/按钮“数据id”属性,并将所选“数据id”属性请求的“值”发送到PHP端,但不知道如何告诉脚本从所选“数据id”获取“值”,猜测这就是为什么它只成功发布购物车中第一个生成的产品的原因,因为其余的产品脚本不起作用。有人能告诉我如何做到这一点吗?谢谢你的建议。

$('button')。在('click',function()上{
var data=$(this.data('id');
var url='您的php文件';
$.post(url、数据、函数(rdata){
//对返回的数据执行任何操作
});

});您需要更好地构造html

我对html做了一些更改,并将每个
btn
字段都放在一个div下

这将使通过其
btn单击
查找所选输入变得更容易

阅读评论以便理解

$(文档).ready(函数(){
$(“.btn”)。单击(函数(){
var id=$(this.attr(“数据id”);
//现在转到所选的btn父项,然后找到.field
//在这里,您可以确定它是正确的字段,因为两个按钮都有
//并且该字段包含在一个div{Parent}下
var idInput=$(this.parent().find(“.field”)
console.clear();
log(“您选择了id”+id+,其值为“+idInput.val())
});
});

量
量
量
量
量

您忘了发送输入字段的值,这正是我隐藏的目的,谢谢。但是由于某种原因,我无法在我的项目中得到这项工作,你能看看我的笔吗?我太傻了,或者是浏览器出了问题,再次谢谢