Обновление: я хотел бы передать var value
на сервер
привет, такой же старый, такой же старый ... :)
У меня есть форма называется <form id="testForm" action="javascript:test()">
и область кода называется<code id="testArea"></code>
Я использую этот код для строкового отображения и отображения данных в области кода:
var formData = form2object('testForm');
document.getElementById('testArea').innerHTML = JSON.stringify(formData, null, '\t');
var value = JSON.stringify(formData, null, '\t');
Я хочу отправить эти данные в файл JSON. Я работал над этим проектом: http://ridegrab.com/profile_old/ и если вы Submit Query
нажмете кнопку, вы увидите, что заголовок страницы заполнится.
Также я хочу использовать этот фрагмент скрипта для отправки данных:
function authenticate(userName, password) {
$.ajax
({
type: "POST",
//the url where you want to sent the userName and password to
url: 'username:password@link to the server/update',
dataType: 'json',
async: false,
//json object to sent to the authentication url
data: '{"userName": "' + userName + '", "password" : "' + password + '"}',
success: function () {
alert("Thanks!");
}
})
}
Опять же, все, что я хочу, - это возможность отправлять эти данные JSON на сервер. Мой сервер настроен update or POST
на данные в нужном месте.
data
наdata: value,
... !! ??error
функцию, она вызывается? Если да, то с какой ошибкой?Ответы:
'data' должен быть строковым объектом JavaScript:
Чтобы отправить свой
formData
, передайте его по адресуstringify
:Некоторые серверы также требуют
application/json
тип контента:Здесь также есть более подробный ответ на аналогичный вопрос: Jquery Ajax Публикация json на веб-сервисе
источник
{ foo: [1,2,3], bar: 'baz' }
. Это будет закодировано какfoo%5B%5D=1&foo%5B%5D=2&foo%5B%5D=3&bar=baz
(unescaped, этоfoo[]=1&foo[]=2&foo[]=3&bar=baz
). Скорее всего, не то, что вы хотите на стороне сервера.Вы публикуете JSON, как это
если вы передаете объект как settings.data, jQuery преобразует его в параметры запроса и по умолчанию отправляет с типом данных application / x-www-form-urlencoded; charset = UTF-8, вероятно, не то, что вы хотите
источник
data
в коем случае не будет обрабатывать строкуВ случае, если вы отправляете этот почтовый запрос на междоменный домен, вы должны проверить эту ссылку.
https://stackoverflow.com/a/1320708/969984
Ваш сервер не принимает кросс-сайт почтовый запрос. Поэтому необходимо изменить конфигурацию сервера, чтобы разрешить межсайтовые запросы.
источник