使用formdata,将数据通过ajax提交到后端

formdata如何使用?

场景
开发商场站时 利用隐藏域将用户的下单有关信息 提交至后台
由于 隐藏域 信息 太多,所以使用formdata对象直接将 数据打包 发送,这里记录下 使用注意事项

踩到的坑 :
没有禁用jquery的数据处理功能 导致后台接受到的数据 无法使用

function submit_Order()
{
        //读取信息
        var hiddenForm = new FormData() //创建FormData对象  
        //说明 : FormData 还有个重载的构造函数,允许直接传入一个表单的DOM
        $('#form-hidden :input:hidden').each(function(i,obj){
            //使用append方法 append(key,value)
            hiddenForm.append(obj.name,obj.value) //使用append方法 结合each 添加数据
            //说明 要查看添加的数据是否存在 应该 使用 hiddenForm.get(key) 查看
        })
        //提交数据
        $.ajax({
            url  : "****",
            type : "post",
            dataType : 'json',//服务端返回的数据类型 
            data : hiddenForm,//发送formdata对象

            //由于XMLHttpRwquest可以处理 FormData对象
            //所以这里要做以下几个操作

            cache: false,.//由于信息涉及到隐私,禁止浏览器将数据缓存(根据需求使用)
            processData: false, //告诉jQuery不要去处理发送的数据
            contentType: false,  // 告诉jQuery不要去设置Content-Type请求头"application/x-www-form-urlencoded",//直接用对象接收时,必须这么写;若要发送json格式数据,可写成“application/json”,用注解@RequestBody String str接收  

            success : function(_json_)
            {
                       /*
                           逻辑代码
                       */
            }
        )}
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,这个问题我可以回答。首先,你需要在 VS Code 中创建一个 HTML 文件,然后在文件中添加一个表单元素,表单中需要包含 id、name 和 phone 三个属性的输入框。接着,你需要编写一个 JavaScript 函数,使用 jQuery 的 AJAX 方法将表单数据提交后端。具体的代码实现可以参考以下示例: HTML 代码: ``` <form id="myForm"> <label for="id">ID:</label> <input type="text" id="id" name="id"><br><br> <label for="name">Name:</label> <input type="text" id="name" name="name"><br><br> <label for="phone">Phone:</label> <input type="text" id="phone" name="phone"><br><br> <input type="button" value="Submit" onclick="submitForm()"> </form> ``` JavaScript 代码: ``` function submitForm() { var formData = { id: $('#id').val(), name: $('#name').val(), phone: $('#phone').val() }; $.ajax({ type: 'POST', url: 'backend.php', data: formData, success: function(response) { alert('Form submitted successfully!'); }, error: function(xhr, status, error) { alert('Error submitting form: ' + error); } }); } ``` 在这个示例中,我们使用了 jQuery 库来简化 AJAX 请求的编写。首先,我们定义了一个 submitForm 函数,该函数会在用户点击提交按钮时被调用。在函数中,我们首先获取表单中的 id、name 和 phone 三个输入框的值,并将它们存储在一个 formData 对象中。接着,我们使用 jQuery 的 AJAX 方法向后端发送一个 POST 请求,请求的 URL 是 backend.php,请求的数据formData 对象。如果请求成功,我们会弹出一个提示框,提示用户表单提交成功;如果请求失败,我们也会弹出一个提示框,提示用户出现了错误。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值