javascript - 使用数组参数构建 URL

标签 javascript jquery

我使用 jQuery serialize() 创建了一个 URL,它创建了如下内容:

client_number=4&start_date&client_number=5

问题是我想要一个包含这样数组的 url:

client_number[]=4&start_date&client_number[]=5

最佳答案

正在序列化的输入元素的 [name] 必须包含 [] 以生成那些 PHP 兼容的查询字符串。

$(function () {
  $('form').on('submit', function (e) {
    $('pre').text($(this).serialize());
    e.preventDefault();
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
  <input type="text" name="example1">
  <input type="text" name="example1">
  <input type="text" name="example2[]">
  <input type="text" name="example2[]">
  <input type="submit" value="Serialize">
</form>
<pre></pre>


注意:按键将显示为 %5B%5D 而不是 []。这是预期的并且可以,因为这是 [] 的正确 URL 编码。

关于javascript - 使用数组参数构建 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36480207/

相关文章:

javascript - Angular 2 : trying to get a project in the detail page

javascript - 从数组中采样随机子集

jquery - Chrome + jQuery 隐藏/显示内联

javascript - 在 Apache Cordova 中实现 CSS sidenav

jquery - 为什么我的悬停效果没有动画?

javascript - 获取作为对象返回的生成器函数,而不是实际调用生成器函数

Javascript错误: this. form is undefined,我无法在成员方法中获取对象变量

javascript - 通过ajax formData发送图像文件到php

javascript - 如何使用 DOM 更改 HTML 表格第一行中的按钮? (通过 DOM 添加和删除行)

javascript - 仅在页面刷新后加载 Jquery 脚本