Jump to content
vinitf

JSon Adicionar novas arrays

Recommended Posts

Tenho um input para o usuário escolher quantos números vão estar no array e estou tentando colocar outro agora para ele escolher a quantidade de arrays que vai gerar através de JSON, mas estou tendo dificuldades. 

<html>

<input  placeholder ="Quantidade de elementos" id="quantidadeElementos" />
<input placeholder ="Quantidade de listas" id="quantidadelistas"/>
<button onclick="myFunction()">Gerar</button>
<p id="gerar"></p>
<p id="demo"></p>
</html>

 

<script>

function myFunction() {
  var listas = {
    listainicial: [],
    nova: []
  };
  var max = document.getElementById("quantidadeElementos").value || 5;
  for (var i = 0; i < max; i++) {
    listainicial.push(parseInt(Math.random() * 100));
    var n = document.getElementById("quantidadelistas").value || 5;
    for (var n = 0; n < max; n++) {
      listainicial.push(parseInt(Math.random() * 100));
      listas.listainicial.push({
        outra: []
     });
   }
    document.getElementById("gerar").innerHTML = listainicial;
    document.getElementById("demo").innerHTML = nova;
  }
  document.getElementById("botão").addEventListener("click", myFunction);
}

</script> 

Share this post


Link to post
Share on other sites

Não sei se entendi bem.

 

Você quer uma saída assim?

Array[10]
	0: Array[10]
		0 : 46
		1 : 13
		2 : 71
		3 : 88
		....
	1: Array[10]
		0 : 55
		1 : 20
		2 : 10
		3 : 5
		....

 

 

<!DOCTYPE HTML>
<html>
<head>
	<meta charset="UTF-8">
	<title></title>
</head>
<body>



<script>

	var qntArrays = 5;
	
	var lista = [];	
	for(var i = 0; i < 10; i++){
		lista[i] = [];
		
		for(var y = 0; y < 10; y++){					
			var rand = parseInt(Math.random() * 100);			
			lista[i][y] = rand;
		}
	}
	
	console.log(lista);
	
</script>
</body>
</html>

 

Algumas dicas.

Se atente ao HTML semântico/correto/valido.

 

 

1-    

<input  placeholder ="Quantidade de elementos" id="quantidadeElementos" />

Prefira:

<input type="text" placeholder ="Quantidade de elementos" id="quantidadeElementos" />

(Ausencia do campo type atrapalha) 

Ou melhor ainda utilize os tipos 'tel/number' do padrão de HTML5

Mais:

https://diveintohtml5.com.br/

 

 

2 - 
O JavaScript deveria ficar antes do fechamento da tag
</body>

Mais:

https://www.eventials.com/pinceladasdaweb/javascript-boas-praticas-e-otimizacoes/

 

3 - 
A tag <body></body> Simplesmente não existe no seu documento.


4 - Utilize o botão 'Code' ao postar cógidos Html/Js/CSS/*....
 

5-

Recomendo os exercícios:

https://github.com/gabrieldarezzo/helpjs-ravi

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By JeanTDZ
      Olá pessoal!
       
      Estou com uma tremenda dificuldade.
      Tenho um formulário na qual está funcionando e cadastrando, porém preciso que o meu botão adicionar autorizado funcione e mostre o que foi digitado para o e-mail. As informações na vdd é enviada para o e-mail e o que será enviado é oque será digitado.
       
      Simplificando ->
      Tenho um botão que adiciona 2 inputs (NOME E SALDO) e conforme for clicando nesse botão, vai adicionando mais campos.
      Dúvida: Como posso fazer com que grave o que foi digitado nesses campos?
       
      Segue o que eu tentei fazer até agora:

      HTML
      <!DOCTYPE html> <html>     <head>         <title>Chame Taxi PrePago</title>                 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>         <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />         <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>         <link rel="icon" type="image/x-icon" href="https://www.flaticon.com/premium-icon/icons/svg/1361/1361253.svg" />         <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"></script>     <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.15/jquery.mask.min.js"></script>     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>     <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>     </head>     <body>         <br />         <div class="container" style="width:100%; max-width:600px">             <h2 align="center">Pré-Pago</h2>             <br />             <div class="panel panel-default">                 <div class="panel-heading"><h4>Registrar</h4></div>                 <div class="panel-body">                     <form method="post" id="register_form">                         <?php echo $message; ?>                         <div class="form-group">                             <label>Nome Completo</label>                             <input type="text" name="user_name" style="text-transform:uppercase" class="form-control" pattern="[a-zA-Z ]+" required />                         </div>                         <div class="form-group">                             <label>E-mail</label>                             <input type="email" name="user_email"  style="text-transform:uppercase" class="form-control" required />                         </div>                         <div class="form-group">                             <label>CEP</label>                             <input type="text" name="campob" id="cep" value="" maxlength="9" onblur="pesquisacep(this.value);" class="form-control">                         </div>                         <div class="form-group"> <table id="myTable" class="table"> <a class="btn btn-primary" onclick="myFunction()" href="#" role="button">Adicionar Autorizado</a>             <thead>                 <tr>                     <th>NOME</th>                     <th>SALDO</th>                 </tr>             </thead>         </table>                         <div class="form-group">                             <input type="submit" name="register" id="register" value="Validar" class="btn btn-info" />                         </div>                     </form>                 </div>             </div>         </div>     </body> </html> JAVASCRIPT 
       
          <script>         var incremento = -1;         function myFunction() {             incremento++;             var table = document.getElementById("myTable");             var row = table.insertRow(0);             var cell1 = row.insertCell(0);             var cell2 = row.insertCell(1);             var cell3 = row.insertCell(2);             var cell4 = row.insertCell(3);             cell1.innerHTML = "NOME";             cell2.innerHTML = '<input type="text" name="name1[${incremento}]" >';             cell3.innerHTML = "SALDO";             cell4.innerHTML = '<input type="text" name="saldo[${incremento}]" size="15px" >';         }     </script>  
    • By ArjunKumar
      Hi, I have been using the HTML and javascript for a while in Map. I just realized that after inserting a value with javascript/jquery the answer is not recognized by Map. I have to google it to learn more thinks about the Javascript map and I have found some good results but didn't get the right query about it. I am stuck between the code. Please check it, Is it right?
       
       
      Self : {self}   <script> $(document).ready(function(){ var whatiwant = "this is what I want"; $("#answer714997X7X98").val(whatiwant); }); </script>
    • By cleriston.melo
      Olá pessoal,
       
      Estou com a seguinte dúvida:
      Preciso impimir as informações de um array criado a partir de uma consulta ao banco de dados, mas preciso imprimir essas informações "quebrada".
      Ex: Nas informações contidas no array, tem cod_exp, controle, serie, cod_prod e quant_prod.
      Eu preciso imprimir as informações por serie.tipo:
       
      Série: 1
      (cod_prod)                     quant_prod
      Produto 1                          10
      Produto 2                          30
      Produto 3                          20
      Produto 4                          50
      ---------------
      Série: 2
      (cod_prod)                     quant_prod
      Produto 1                          10
      Produto 2                          30
      Produto 3                          20
      Produto 4                          50
      ---------------
      etc...
      ----------------------------------------
      O código é esse:
       
      <?php
                      $query_prod_exp = "select * from estoque_expositor where est_exp_cod_exp=$cod_exp and est_exp_ativo='S' order by est_exp_cod_exp";
                      $result_prod_exp = mysqli_query($con, $query_prod_exp) or die(mysqli_error());
                      $row_prod_exp = mysqli_fetch_array($result_prod_exp);
                      
                      $controle = $row_prod_exp['est_exp_controle'];
                      $serie = $row_prod_exp['est_exp_controle'];
                      $cod_prod = $row_prod_exp['est_exp_cod_prod'];
                      $saldo_atual = $row_prod_exp['est_exp_quant_prod'];
                      
                          // ESCREVE UMA LINHA NA TABELA
                          echo "<tr>";
                      
                          // ESCREVE UMA COLUNA NA TABELA E EXIBE O NOME DO PRODUTO
                          echo "<td>";
                          $query_prod = "select * from produtos where prod_id=$cod_prod";
                          $result_prod = mysqli_query($con, $query_prod) or die(mysqli_error());
                          while ($row_prod = mysqli_fetch_array($result_prod)) {
                              $prod = $row_prod['prod_nome'];
                              echo $prod."</td>";
                          }
                          echo "<td>" . $saldo_atual . "</td>";
                          echo "</tr>";
                  ?>
       
      Obrigado a todos pela ajuda...
    • By Ted2370
      Primeiro, eu sou leigo no assunto e estou tentando aprender sobre funções criando um programa básico!
      O problema é que estou tentando fazer uma condição que:
      Ao apertar o botão: Abrir Caixa, a ideia é que apareça um alert na tela dizendo que o caixa foi aberto. até aí tudo bem.
      Mas queria que, ao pressionar o botão novamente, ele fechasse o caixa.
      Pra isso tentei utilizar a própria string do que, quando estivesse escrito 'Caixa Fechado', ele abriria, e quando estivesse 'Caixa Aberto' ele fecharia
      o problema é que eu não sei por que o meu js não ta reconhecendo o que está escrito na string, só reconhece que é uma string. (quando tento o mesmo código no node exec, ele funciona) :(
      ta aí os Códigos:
      <!DOCTYPE html> <html lang="pt-BR"> <head> <link rel="stylesheet" href="estilos.css"> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Caixa</title> </head> <body> <div class="lateral" > <h1 class="" name="txtest" id="estado">Caixa Aberto</h1> <input type="number" name="txtinit" id="txtinit" class="txtinit"> <input type="button" value="Abrir Caixa" onclick="abrir()" class="open" id="abrir"> </div> <script src="./main.js"></script> </body> </html> const { app, BrowserWindow } = require('electron') function createWindow() { let win = new BrowserWindow({ width: 1360, height: 720, fullscreen: false, frame: true, webPreferences: { nodeIntegration: false } }) win.loadFile('index.html') win.removeMenu('index.html') } function abrir() { var estate = window.document.getElementById('estado') if (estate == 'Caixa Aberto') { estate = 'Caixa Aberto' window.alert("O caixa foi Aberto!") } else { estate = 'Caixa Fechado' window.alert("O caixa foi Fechado!") } } app.on('ready', createWindow) body{ background: rgba(231, 223, 206, 0.37); } .word{ background: red; } .txtinit{ font-variant-numeric: tabular-nums; height: 20px; width: 200; background: rgba(231, 223, 206, 0.37); } .open{ height: 60px; width: 200px; margin-top: 500px; } .lateral{ text-align: center; background: rgba(0, 0, 0, 0.74); margin-top: 20px; height: 670px; width: 250px; }  
    • By rtavix
      Estou realizando uma implementação de um determinado relatório, e implementei a estrutura(html da pagina) do mesmo dinamicamente, entretanto quando vou tentar imprimir ele com os dados preenchidos o mesmo não abre uma aba a parte mostrando toda essa estrutura da pagina. Estou tentando fazer via JavaScript, porém não funciona. meu ação do clique do botão de imprimir é esse:
      <div class="box-footer"> <button class="btn btn-padrao" id="btnImprime" runat="server" visible="false" onserverclick="btnImprimir_ServerClick">Imprimir</button></i>Novo</button> </div> Meu javaScript é esse:
      function Imprimir() { var panel = document.getElementById("ConteinerImprimir"); var printWindow = window.open('', '', ''); printWindow.document.write('<html><head><script src="JsRelatorioFinanciamento.js"></script>'); printWindow.document.write('<link href="../StyleJs.RelFinanciamento.css" rel="stylesheet"/>'); printWindow.document.write('</head><body>'); printWindow.document.write('<div class="conteiner" style="width: 700px">' + panel.innerHTML + '</div>'); printWindow.document.write('</body></html>'); printWindow.document.close(); setTimeout(function () { printWindow.print(); }, 500); return false; e meu código .cs que realiza a implementação da estrutura da pagina em html dinâmico é esse: 
      #region html #region Header private string header = @" <table style = 'margin-bottom: 0px;'> <tr id='topLogo'> <img src = 'http://internet.sefaz.es.gov.br/imagens/topo_brasao.png' alt=''> <td style = 'border: 0px; padding-bottom: 5px;'> <h2 style='margin-top: 15px;' class='center'> TESTE 1 </h2> <h3 style = 'margin-top: 15px;' class='center'> TESTE 2 - 2<br/> </h3> <h3 style = 'margin-top: 15px;' class='center'> TESTE 3<br/> </h3> <h3 style = 'margin-top: 15px;' class='center'> FINANCIAMENTO LIBERADO - TODAS EMPRESAS<br/> </h3> <h3 style = 'margin-top: 15px;' class='center'> Base {1}<br/> </h3> <h1 style = 'margin-top: 15px;' class='left'> EmpresasTESTE4 - {2}<br/> </h1> </td> </tr> </table>"; #endregion #region Conteudo private const string dadosFinanciamento = @" <table style='padding: 0px; margin: 0px;' class='no-bold'> <tr class='tr-center'> <tr> <td colspan = '4' > Razão Social <h4> {0}</h4> </td> </tr> <tr> <td>Inscrição Estadual <h4 class='center'>{1}</h4> </td> <td colspan ='2'> C.N.P.J <h4> {2} </h4> </td> <td colspan='2'>Nome Fantasia <h4>{3}</h4> </td> </tr> </table> <br/>"; #endregion #region ValoresFin private const string dadosValores = @" <table style='padding: 0px; margin: 0px;'class='no-bold'> <tr> <td rowspan = '3' style=border-bottom: 3px solid black> <h5>Faturamento Dezembro 2014</h5> <h4>Saldo</h4> </td> <td class='center'> <h2>ICMS Previsto</h2> </td > <td class='center'> <h2>ICMS Recolhido</h2> </td> <td class='center'> <h2>Contratado</h2> </td> <td class='center'> <h2>Liberado</h2> </td> </tr> <tr> <td class='center'> {0} </td> <td class='center'> {1} </td> <td class='center'> {2} </td> <td class='center'> {3} </td> </tr> </table> <br/>"; #endregion #endregion e estou utilizando o StringBuilder:
      StringBuilder strConstrution = new StringBuilder(); Alguém saberia me instruir como eu posso fazer para conseguir visualizar meu relátorio por completo?
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.