JavaScript - Agregar un array a un

 
Vista:

Agregar un array a un

Publicado por Vidal (15 intervenciones) el 26/09/2018 04:10:11
Buen dia Foro,

Les platico que tengo un formulario en donde serializo la informacion. En el formulario tengo un input donde tengo un list. Al serializar me manda el contenido del input pero yo necesito el id en vez del texto.

Al ordenar el data (postForm) intento agregar un arreglo pero no me esta funcionando, Alguien sabe como agregar el id en vez del texto al serializar el formulario?

1
2
3
4
5
6
7
8
9
10
11
postForm =
    "accion=save_stop&" +
    "order_id=" + $("#txtOrderID").val() + "&" +
    "DrvArrays=" + GetListArray("StpDriver","idlstdrivers") + "&" +
    $("#div-Stops :input").serialize();
 
$.ajax({
    method: "POST",
    url: "Controlador/ctrl-Logistic-orders.php",
    data: postForm ,
    success: function (data) {
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Agregar un array a un

Publicado por xve (2100 intervenciones) el 26/09/2018 10:08:48
Hola Vidal, no entiendo muy bien a que te refieres... nos puedes comentar con mas detalle?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de santi
Val: 30
Ha disminuido 1 puesto en JavaScript (en relación al último mes)
Gráfica de JavaScript

Agregar un array a un

Publicado por santi (12 intervenciones) el 27/09/2018 01:09:08
Hola,

¿El input que contiene la lista es del tipo select? Porque no entiendo muy bien el concepto de tener una lista dentro de un input...

Si te refieres a que existen varios inputs con el mismo nombre (múltiple opción), cambia el nombre a "mi_campo[]" con "[]" al final y todos los campos igual y con PHP lo decodificas como un array.

Si no es nada de esto mira de añadir algo más de código porque así es un poco difícil...

Gracias ;)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Agregar un array a un

Publicado por Vidal (15 intervenciones) el 27/09/2018 03:44:54
Saludos,

El codigo es el siguiente:

1
2
3
4
5
6
7
8
9
<datalist name="ListDriver" id="idlstdrivers">
    <option id="1" value='Driver1'>1</option>";
    <option id="2" value='Driver2'>2</option>";
    <option id="3" value='Driver3'>3</option>";
</datalist>

<input type='text' class='form-control input-sm' id="StpDriver" name="StpDriver[]" list='idlstdrivers' value="" />
<input type='text' class='form-control input-sm' id="StpDriver" name="StpDriver[]" list='idlstdrivers' value="" />
<input type='text' class='form-control input-sm' id="StpDriver" name="StpDriver[]" list='idlstdrivers' value="" />


====

El numero de inputs es dinamico, pueden ser 1 o mas.
Al momento de serializar lo que obtengo para StpDriver es Driver1, Driver2 y Driver3, lo que me interesa realmente es objtener 1,2,3.
Para lo anterior hice una funcion de javascript (GetListArray) en donde le paso como parametros el nombre del objeto y la lista (datalist) y me pueda traer lo que necesito, el punto esta en que no se que necesito, no se si necesito un array, un string o que cosa pueda mandarle en el DrvArrays del postForm que estoy armando. Digo que no se que es lo que necesito porque al momento de crear un arreglo, al recibirlo en el servidor, obtengo esto:

"DrvArrays":"[\n {\n \"id\": \"7\",\n \"value\": \"Rogelio Mendez\"\n },\n {\n \"id\": \"5\",\n \"value\": \"Juan Mendoza\"\n }\n]"

Otras formas objteco "DrvArrays":"[Object1],[Object2]....

Lo que quisiera es poder mandar un arreglo y poderlo manejar en php como si fuera un arreglo de inputs pero por mas que he intentado no logro hacerlo.

Espero haberme explicado y si hay alguna otra manera de hacerlo, soy todo oidos.

Gracias de antemano.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Agregar un array a un

Publicado por Vidal (15 intervenciones) el 29/09/2018 04:56:14
Para no dejarlo en blanco, la respuesta esta en vez de utilizar una concatenacion con esta sentencia:

1
2
3
4
5
postForm =
    "accion=save_stop&" +
    "order_id=" + $("#txtOrderID").val() + "&" +
    "DrvArrays=" + GetListArray("StpDriver","idlstdrivers") + "&" +
    $("#div-Stops :input").serialize();

utilizar serializeArray de esta manera:

1
2
var data = $("#div-Stops :input").serializeArray();
data[data.length] = {"name":"accion","value":"save_stop" };
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar