Показать сообщение отдельно
  #1 (permalink)  
Старый 13.11.2015, 11:04
Аватар для fenix_63
Аспирант
Отправить личное сообщение для fenix_63 Посмотреть профиль Найти все сообщения от fenix_63
 
Регистрация: 05.06.2014
Сообщений: 92

AJAX меняет символы при отправке данных
Всем привет. Народ, тут вот такая тема. Из input'а хочу данные добавить в базу данных, используя Ajax-запрос:

$("#FormSubmit").click(function (e) {//если произошёл клик по кнопке "Добоавить номер"

        e.preventDefault();//Отключает стандартное действие (поведение) для события клик. Это нужно для того, чтобы пользователь оставался на данной странице

		
		
		
        if($("#contentText").val()==="") //simple validation
        {
            alert("Введите текст!");
            return false;
        }

		
		
		//post переменные. Представляют собой пару Ключ=значение. content_txt - ключ, #contentText - значение
        var myData = "content_txt="+ $("#contentText").val() + "&search_field=" + $("#search").val() + "&field3=" + $("#field3").val() + "&field4=" +
		$("#field4").val(); 

		
		
		
        [B]jQuery.ajax({
            type: "POST", // HTTP метод  POST или GET
            url: "response.php", //url-адрес, по которому будет отправлен запрос
            dataType:"text", // Тип данных,  которые пришлет сервер в ответ на запрос ,например, HTML, json
            //processData:false,//Отключаем эту опцию для того, чтобы можно было передавать несколько значений
			data:myData, //данные, которые будут отправлены на сервер (post переменные)
            //contentType: "text/plain; charset=utf-8",//Попробуем явно указать эту опцию, чтобы символ + не заменялся на пробел
			
			
			
			
			success:function(response){
            $("#responds").append(response);//Добавляем в конец списка новый (или новые) номер(а)
            $("#contentText").val(''); //очищаем текстовое поле после успешной вставки
			$("#search").val('');
			$("#field3").val('');
			$("#field4").val('');
            },
            error:function (xhr, ajaxOptions, thrownError){
                alert('Неудачная попытка добавления данных '+thrownError); //выводим ошибку
            }
        });[/B]
    });


Там телефонные номера ввожу. Если ввожу без символа "+", т.е. 8123456, то всё нормально работает, и нормально номер добавляется в базу. А вот если ввожу с символом "+", то Ajax его перед отправкой на сервер заменяет на пробел, и в базу данных добавляет номер с пробелом вместо символа "+".

Подскажите пожалуйста, где смотреть? А то я новичек в JS

Полностью HTML-форма вот тут: http://fenix-63.hol.es/

Добавляю в базу за 1 раз по 4 номера - поля "Отправитель", "Комментарий", "поле 3", "Поле 4". пока что вот только над полем "Отправитель" мучаюсь. Помогите пожалуйста.
Ответить с цитированием