Foros del Web » Programando para Internet » Jquery »

Generar dinámicamente el JSON para el JQuery

Estas en el tema de Generar dinámicamente el JSON para el JQuery en el foro de Jquery en Foros del Web. Hola a todos: Tengo el siguiente código en JQuery: $("#bt_submit_md").click(function() { $.post( "insertar_datos.php", { tabla:"<?php echo $_GET["tabla"];?>", titulo:"lunes", descripcion:"martes", palabras_clave:"miercoles" }, function(respuesta){ if (respuesta!="") { ...
  #1 (permalink)  
Antiguo 04/02/2013, 04:15
 
Fecha de Ingreso: junio-2007
Mensajes: 298
Antigüedad: 17 años, 5 meses
Puntos: 5
Generar dinámicamente el JSON para el JQuery

Hola a todos:

Tengo el siguiente código en JQuery:

$("#bt_submit_md").click(function() {
$.post(
"insertar_datos.php",
{
tabla:"<?php echo $_GET["tabla"];?>",
titulo:"lunes",
descripcion:"martes",
palabras_clave:"miercoles"
},
function(respuesta){
if (respuesta!="") {
alert(respuesta);
}
else {
alert("Error:mal");
}
}
); // $.post

}) // click bt_submit_md

Me funciona perfectamente. Pero lo que yo quiero es generar dinámicamente el JSON a partir de los campos del formulario con su correspondiente valor, por lo que hago:

$("#bt_submit_md").click(function() {
var cadena_json = "{tabla:'<?php echo $_GET["tabla"];?>'";
$("#form_lsg").find(':input').each(function() {
var elemento= this;
cadena_json = cadena_json+","+elemento.id+":'"+elemento.value+"' ";
});
cadena_json = cadena_json+"}";
alert(cadena_json);


$.post(
"insertar_datos.php", cadena_json,
function(respuesta){
if (respuesta!="") {
alert(respuesta);
}
else {
alert("Error:mal");
}
}
); // $.post

Y no me funciona, no me manda la cadena creada, lo he puesto de varias formas:

$.post(
"insertar_datos.php", cadena_json,

$.post(
"insertar_datos.php", eval(cadena_json),

$.post(
"insertar_datos.php", document.write(cadena_json),

Pero nada, no me funciona en ningún caso. ¿Cómo puedo pasarle la cadena de json generada dinámicamente?

Muchas gracias
  #2 (permalink)  
Antiguo 04/02/2013, 06:16
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Respuesta: Generar dinámicamente el JSON para el JQuery

Es mejor que formes el objeto directamente:
Código Javascript:
Ver original
  1. var cadena_json = {'tabla':'<?php echo $_GET["tabla"];?>'};
  2. $("#form_lsg").find(':input').each(function() {
  3.     var elemento= this;
  4.     cadena_json[elemento.id] = elemento.value;
  5. });
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 04/02/2013, 07:12
 
Fecha de Ingreso: junio-2007
Mensajes: 298
Antigüedad: 17 años, 5 meses
Puntos: 5
Respuesta: Generar dinámicamente el JSON para el JQuery

Muchas gracias. Así ya sí que me funciona perfectamente.

Etiquetas: campos, formulario, funcion, input, javascript, js, json, php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:36.