Ver Mensaje Individual
  #5 (permalink)  
Antiguo 04/09/2015, 15:02
ElizaD
 
Fecha de Ingreso: septiembre-2015
Mensajes: 6
Antigüedad: 9 años, 4 meses
Puntos: 0
Respuesta: Acceder a un elemento del listado creado dinamicamente con Javascript, Jso

Cita:
Iniciado por luisdavid1993 Ver Mensaje
usa el Highlight para poder comprender el codigo

Código PHP:
<html>
<
head>
<
meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">

<
script type="application/javascript">
function 
loadJSON(){
var 
xmlhttp = new XMLHttpRequest();
var 
url "ArchivoDePrueba.txt";
xmlhttp.onreadystatechange = function() {
if (
xmlhttp.readyState == && xmlhttp.status == 200) {
var 
myArr JSON.parse(xmlhttp.responseText);
myFunction(myArr);
var 
datos '00AJ081';
alert (consultadatos)); 
}
}
xmlhttp.open("GET"urltrue);
xmlhttp.send();
function 
myFunction(arr) {
var 
out "";
var 
i;
var 
contador 0;
for(
0arr.lengthi++) {
out += '<tr><td><input type="text" name="categoria" value="' arr[i].Categoria '"/></td>' 
'<td> <input type="text" name="currencyDef" value="' arr[i].CurrencyDef '"/></td>' 
'<td> <input type="text" name="description" value="' arr[i].Description '"/></td>' 
'<td> <input type="text" name="familia" value="' arr[i].Familia '"></td>' 
'<td> <input type="text" name="marks" value="' arr[i].Marks '"/></td>' 
'<td> <input type="text" name="name" value="' arr[i].Name '"/></td>' 
'<td> <input type="text" name="partNum" value="' arr[i].PartNum '"/><td>' 
'<td> <input type="text" name="quantity" value="' arr[i].Quantity '"/></td>' 
'<td> <input type="text" name="salesminprice" value="' arr[i].Salesminprice '"/></td>' 
'<td> <input type="submit" name="publicar" value="Publicar" onclick="consulta("'+arr[i].PartNum +'")/> </td>' +'</tr>';
}
document.getElementById("id01").innerHTML out;
}

// Trate de hacer esta consulta para hallar el id que sería PartNum pero no supe llamarla en la función de arriba :c

function consulta(valor) { 
if (
xmlhttp.readyState == && xmlhttp.status == 200) {
var 
myArr JSON.parse(xmlhttp.responseText);
for(var 
0myArr.lengthi++){
if(
myArr[i].PartNum == valor){
return 
myArr[i].Categoria myArr[i].CurrencyDef myArr[i].Description +
myArr[i].Familia myArr[i].Marks myArr[i].Name myArr[i].PartNum 
myArr[i].Quantity myArr[i].Salesminprice;
}
}
}
xmlhttp.open("GET"urltrue);
xmlhttp.send();
}




</script>

<script language="javascript">
function defineOpcion(opcion) {
document.forms[0].opcion.value = opcion;

}
</script>

<title>JSON and AJAX</title>
</head>
<body>
<form name="listaProductos" action="productoLinioProveedor.jsp" method="post">
<div>
<table id="id01" cellpadding="0" cellspacing="0" name="productos">
</table>
</div>
<button type="button" onclick="loadJSON()">Update Name</button>
<h2>Click this button to update the page</h2>
</form>
</body>
</html> 
JSON:

[{"Categoria":"Storage","CurrencyDef":"COP","Des cri ption":"n2225 sas/sata hba for ibm system x","Familia":"ALMACENAMIENTO","Marks":"LENOVO SERVIDORES","Name":"N2225 SAS/SATA HBA for IBM System x","PartNum":"00AE912","Quantity":2,"Salesminpr ice ":706006.97},{"Categoria":"Accesorios Servidores","CurrencyDef":"USD","Description":"hdd 300gb 15k 6gbps sas 2.5in g3hs hdd","Familia":"SERVIDORES","Marks":"LENOVO SERVIDORES","Name":"HDD 300GB 15K 6Gbps SAS 2.5in G3HS HDD","PartNum":"00AJ081","Quantity":6,"Salesminpr i ce":328.45}]

JSP a pasar los datos
---
Código PHP:
<html>
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">

<!--
Se importan los estilos -->
<
script type="text/javascript" src="js/livevalidation.js"></script>
<link rel="stylesheet" href="css/live_validation.css"/>

<script language="javascript">

function defineOpcion(opcion) {
document.forms[0].opcion.value = opcion;
document.forms[0].submit();
}
</script>
<script language="javascript" type="text/javascript" src="tinymce/jscripts/tiny_mce/tiny_mce.js"></script>
<script language="javascript" type="text/javascript">
tinyMCE.init({
mode: "textareas",
theme: "advanced"
});
</script>

</head>
<body>

<div class="contenido" >
<h2 style="text-align: center;">INSERTAR PRODUCTO</h2>
<form action="cargaControl" method="POST"" >
<input id="slcVendedor" type="hidden" name="id_vendedor"/>
</form>
<%

String categoria = request.getParameter("categoria");
String currencyDef = request.getParameter("currencyDef");
String description = request.getParameter("description");
String familia = request.getParameter("familia");
String marks = request.getParameter("marks");
String name = request.getParameter("name");
String partNum = request.getParameter("partNum");
String quantity = request.getParameter("quantity");
String salesminprice = request.getParameter("salesminprice");

out.println("Categoría: " + categoria + "<br />");
out.println("CurrencyDef: " + currencyDef + "<br />");
out.println("Description: " + description + "<br />");

out.println("Familia: " + familia + "<br />");
out.println("Marks: " + marks + "<br />");
out.println("Name: " + name + "<br />");
out.println("PartNum: " + partNum + "<br />");
out.println("Quantity " + quantity + "<br />");
out.println("Salesminprice: " + salesminprice + "<br />");


%>
Categoría:
<input type="text" value="<% out.println(request.getParameter("categoria"));%>"/>

</div>
</body>
</html> 
Muchas Gracias..