[HTML 5] Transforming FormData for the Server (URLSearchParams)

复制代码
const app = document.getElementById('app');
app.innerHTML = `
  <h1>JavaScript DOM</h1>
  <form name="order">
    <label>
      Your name
      <input type="text" name="fullname">
    </label>
    <label>
      Which pizza would you like?
      <select name="pizza">
        <option value="pepperoni">Pepperoni</option>
        <option value="meaty">Meaty</option>
        <option value="cheesey">Cheesey</option>
      </select>
    </label>
    <div>
      What size?
      <label>
        Small
        <input type="radio" name="size" value="small" checked>
      </label>
      <label>
        Medium
        <input type="radio" name="size" value="medium">
      </label>
      <label>
        Large
        <input type="radio" name="size" value="large">
      </label>
    </div>
    <label>
      Quantity
      <input type="number" name="quantity" value="1">
    </label>
    <button type="submit">
      Submit
    </button>
  </form>
`;

const form = document.forms.order;

function handleSubmit(event) {
  event.preventDefault();
  const formData = new FormData(event.target);

  // query string
  // Content-Type = application/x-www-form-urlencoded
  // fullname=Todd%20Motto&pizza=pepperoni&size=large&quantity=2
  // const data = [...formData.entries()];
  // const asString = data
  //   .map(x => `${encodeURIComponent(x[0])}=${encodeURIComponent(x[1])}`)
  //   .join('&');
//. or using URLSearchParams
const asString = new URLSearchParams(formData).toString(); console.log(asString); // json const asJSON = JSON.stringify(Object.fromEntries(formData)); console.log(asJSON); } form.addEventListener('submit', handleSubmit);
复制代码

 

posted @   Zhentiw  阅读(217)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2019-06-18 [Javascript] Correctly Type-Checking Numbers
2019-06-18 [ES2015] Number.isNaN instead of isNaN
2019-06-18 [Javascript] How to deal with floating number
2019-06-18 [Nx] Note for learning Nx
2019-06-18 [Cypress] Wrap External Libraries with Cypress
2017-06-18 [PReact] Handle Simple Routing with preact-router
2017-06-18 [PReact] Reduce the Size of a React App in Two Lines with preact-compat
点击右上角即可分享
微信分享提示