@Waniman

Как передать два параметра в аргумент функции AJAX запроса?

Есть функция которая принимает 3 параметра и делает по ним AJAX запрос.
getData(url,method,data).
Как передать в параметр data, который отправляет данные в запрос два и более параметра,например name='john',surname='Villiams' ?
  • Вопрос задан
  • 123 просмотра
Пригласить эксперта
Ответы на вопрос 2
@thisuserhatephp
Офлайн - losers Онлайн - lusers
data: {
	'name': varname,
	'surname': varsurname
},
Ответ написан
Комментировать
zkrvndm
@zkrvndm
Архитектор решений
Если третий параметр строчный, то можете сделать так:
var data_send = {
	'name':  'John',
	'surname':  'Villiams'
};

var data_string = httpBuildQuery(data_send);

var result = getData(url, method, data);

console.dir(result);

// Функция для преобразования объекта
// в строку формата x-www-form-urlencoded:

function httpBuildQuery(object_to_convert) {
	
	var params = new URLSearchParams();
	
	var paramsGenerator = function(parent_key, iterate_object) {
		
		for (var current_key in iterate_object) {
			
			if (typeof iterate_object[current_key] == 'string' || typeof iterate_object[current_key] == 'number') {
				
				if (parent_key.length > 0) {
					var property_path = parent_key + '[' + current_key + ']';
				} else {
					var property_path = current_key;
				}
				
				params.append(property_path, iterate_object[current_key]);
				
			} else if (typeof iterate_object[current_key] == 'object') {
				
				if (parent_key.length > 0) {
					var property_path = parent_key + '[' + current_key + ']';
				} else {
					var property_path = current_key;
				}
				
				paramsGenerator(property_path, iterate_object[current_key]);
				
			}
			
		}
		
	}
	
	paramsGenerator('', object_to_convert);
	
	return params.toString();
	
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
24 нояб. 2024, в 01:35
5000 руб./за проект
24 нояб. 2024, в 01:24
500 руб./за проект
24 нояб. 2024, в 00:04
5000 руб./за проект