首页 > 解决方案 > 如何使用 Jquery Ajax 传递变量和 FormData?

问题描述

我想用ajax更新输入字段的数据。作为 Ajax 的新手,到目前为止我已经尝试过了。我正在传递两个变量(即,名称和 Col 来标识输入字段的名称和 id)。所以现在我被困住了。我想用 mysql 表“Email”中的 name="email_id" 和列名更新输入字段的值。所以我传递了这两个变量,以便 php 可以识别输入名称。但是如何在字段中传递新数据?我已经用 FormData 以另一种形式完成了它,但在这种情况下我需要帮助。如果我不具体,我很抱歉,这是我对 stackoverflow 的第一个查询。

HTML:

<input type="email" onblur="validate()" value="<?php echo $row['Email']; ?>" id="email_id" data-toggle="tooltip" title="Invalid Email" data-placement="top" data-content="Email must be in the format xyz@abc.com/net/info/org/in" name="email_id" placeholder="E-mail ID eg. max@mymail.com" class="form-control col-sm">

查询:

$('input').on("change",function(){
    console.log("Clicked");
    var Name=$(this).attr('name');
    var Col=$(this).attr('id');
    console.log(Name);
    $.ajax({
        url:"update.php",
        method:"post",
        data:{"Col":Col,"Name":Name},
        success:function(response){
            console.log(response);
        }
    });
});

标签: phpjqueryajax

解决方案


您可以使用 document.getElementByID().value 来获取输入字段的值:

$('input').on("change",function(){
            console.log("Clicked");
            var Val=document.getElementById('email_id').value;
            var Name=$(this).attr('name');
            var Col=$(this).attr('id');
            $.ajax({
                url:"update.php",
                method:"post",
                data:{"Col":Col,"Name":Name, "Email":Val},
                success:function(response){
                    console.log(response);
                }
            });
});

推荐阅读