FormData用法详解

FormData的基本用法

  • html代码(创建表单元素)
<form id='form>
	<input type='text' name='name' />名字
	<input type='password' name='password' />密码
</form>
  • js代码(创建formData空对象)
// 创建formData空对象
var formData = new FormData()
  • 如何根据form表单将表单数据一并添加到formData对象中呢?
// 根据form标签的ID,获取form表单元素
var myForm = document.getElementById('form')
// - var formData = new FormData()
// 将获得的表单元素作为参数,对formData进行初始化
var formData = new FormData(myForm)

FormData的常用方法

// 创建formData空对象
var formData = new FormData()
  1. append
    append方法会添加一个新值到 FormData 对象内的一个已存在的键中,如果键不存在则会添加该键
// formData.append(name, value)
formData.append('username', 'Chris')
  1. get
    get方法用于返回FormData对象中和指定的键关联的第一个值
// formData.get(name)
formData.append('username', 'Chris')
formData.append('username', 'Bob')

formData.get('username') // Chris
  1. getAll
    getAll方法会返回该 FormData 对象指定 key 的所有值
// formData.getAll(name)
formData.append('username', 'Chris')
formData.append('username', 'Bob')

formData.getAll('username'); // ["Chris", "Bob"]
  1. delete
    delete方法会从 FormData 对象中删除指定键,即 key,和它对应的值,即 value
// formData.delete(name)
formData.delete('username')
  1. set
    set方法会对 FormData 对象里的某个 key 设置一个新的值,如果该 key 不存在,则添加

在这里我们可以看出 set append 的区别了(以下代码和2对比)

// formData.set(name, value)
formData.set('username', 'Chris')
formData.set('username', 'Bob')

formData.get('username') // Bob
  1. has
    has方法会返回一个布尔值,表示该FormData对象是否含有某个key
// formData.has(name)
formData.has('username')
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java中可以使用URLEncoder类来对FormData进行编码。URLEncoder类位于java.net包中,它提供了用于编码URL参数的静态方法。要对FormData进行编码,你可以使用`URLEncoder.encode()`方法来编码每个参数的值,并将它们拼接成编码后的字符串。以下是一个示例代码: ```java import java.net.URLEncoder; ... // 假设有一个formData对象包含表单数据 FormData formData = new FormData(); formData.put("name", "John Doe"); formData.put("age", "25"); StringBuilder encodedFormData = new StringBuilder(); for (String key : formData.keySet()) { String value = formData.get(key); String encodedValue = URLEncoder.encode(value, "UTF-8"); encodedFormData.append(key).append("=").append(encodedValue).append("&"); } String encodedFormDataString = encodedFormData.toString(); // 移除末尾的"&"符号 encodedFormDataString = encodedFormDataString.substring(0, encodedFormDataString.length() - 1); System.out.println("Encoded FormData: " + encodedFormDataString); ``` 在上面的示例中,我们使用FormData对象来存储表单数据,然后使用URLEncoder类的encode()方法对每个参数的值进行编码,并将它们拼接成编码后的字符串。最后,我们移除字符串末尾的"&"符号,并打印出编码后的表单数据。这段代码使用了UTF-8字符集对参数值进行编码,你可以根据需要选择不同的字符集。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [java请求第三方工具类;包含: json传参,get传参,formdata传参](https://blog.csdn.net/qq_43582260/article/details/113529116)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [FormData详解](https://blog.csdn.net/walk_man_3/article/details/80858851)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值