javascript - 删除多余的空格,修剪 ajax jquery
问题描述
通过 ajax 发送后从开头和结尾删除多余的空格
$(function(){
$('#form').submit(function(e){
e.preventDefault();
var data = $(this).serialize();
data = jQuery.trim(data); (DONT WORK)
$.ajax({
url: "index.php",
data: data,
type: "POST",
dataType: "xml"
});
解决方案
serialize()
返回一个 URL 编码的字符串,并从Jquery.trim
整个字符串中删除不会对值进行任何更改的空格。
使用serializeArray()
返回数组并通过迭代对值进行更新的方法。
var data = $(this).serializeArray();
data.forEach(o => o.value = jQuery.trim(o.value)); // or data.forEach(function(o){ o.value = jQuery.trim(o.value) });
对于制作单个空间,您可以使用String#replace
方法。
var data = $(this).serializeArray();
data.forEach(o => o.value = o.value.trim().replace(/\s+/g, ' '));
推荐阅读
- android - 如何实现类似于 Hotjar 的会话记录,但针对移动应用程序
- javascript - 流中的 JavaScript GET 请求网页图像
- java - Firebase 身份验证突然停止工作
- javascript - ReferenceError:初始化前无法访问“嵌入”
- html - 使用 form_for、Ruby on Rails、twitter bootstrap 水平显示表单
- karate - 如何在空手道 UI 测试中处理警报框
- git - 你如何分隔git上每个分支的行?
- powershell - System.IO.StreamWriter 不包含名为“writeline”的方法
- azure - 启动 Azure 存储模拟器时出现 PlatformNotSupportedException 错误
- python - 为什么具有适当偏移值的 Pandas Dataframe first function(DataFrame.first("2D")) 返回空?