Убрать лишние пробелы, обрезать ajax jquery - PullRequest
1 голос
/ 16 апреля 2019

Удалить лишние пробелы в начале и в конце после отправки через 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"
        });

1 Ответ

0 голосов
/ 16 апреля 2019

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, ' ')); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...