actualización: me gustaría pasar el var value
al servidor
hola, lo mismo de siempre ... :)
Tengo un formulario llamado <form id="testForm" action="javascript:test()">
y un área de código llamada<code id="testArea"></code>
Estoy usando este código para stringificar y mostrar los datos en el área de código:
var formData = form2object('testForm');
document.getElementById('testArea').innerHTML = JSON.stringify(formData, null, '\t');
var value = JSON.stringify(formData, null, '\t');
Lo que quiero es enviar estos datos a un archivo JSON. He estado trabajando en este proyecto: http://ridegrab.com/profile_old/ y si presionas el Submit Query
botón verás el encabezado de la página.
También quiero usar este fragmento de script para enviar datos:
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!");
}
})
}
Nuevamente, todo lo que quiero es poder enviar esos datos JSON al servidor. Mi servidor está configurado para update or POST
los datos en el lugar correcto.
data
condata: value,
... !!error
función, ¿se llama? Si es así, ¿con qué error?Respuestas:
'data' debería ser un objeto JavaScript en cadena:
Para enviar su
formData
, páselo astringify
:Algunos servidores también requieren el
application/json
tipo de contenido:También hay una respuesta más detallada a una pregunta similar aquí: Jquery Ajax Publicar json en el servicio web
fuente
{ foo: [1,2,3], bar: 'baz' }
. Esto se codificará en forma comofoo%5B%5D=1&foo%5B%5D=2&foo%5B%5D=3&bar=baz
(sin escape, esfoo[]=1&foo[]=2&foo[]=3&bar=baz
). Probablemente no sea lo que quieres del lado del servidor.Publicas JSON así
si pasa un objeto como settings.data, jQuery lo convertirá en parámetros de consulta y, de forma predeterminada, lo enviará con el tipo de datos application / x-www-form-urlencoded; charset = UTF-8, probablemente no es lo que quieres
fuente
data
cadena en ningún casoEn caso de que envíe esta solicitud de publicación a un dominio cruzado, debe consultar este enlace.
https://stackoverflow.com/a/1320708/969984
Su servidor no acepta la solicitud de publicación cruzada. Por lo tanto, la configuración del servidor debe cambiarse para permitir solicitudes entre sitios.
fuente