Ir para conteúdo
  • 0
Jack Oliveira

Como pegar Dados da tabela para pagina que esta em html com javascript {{ title }}

Pergunta

 

 

Ola pessoal boa tarde preciso de um favor de vocês se assim for possível!!

 

Seguinte  tenho uma página que ela esta em apenas em HTML porem preciso pegar umas informações do banco de dados e não sabendo como trazer os

dados das tabelas para esta página canais.html, talvez sej ate simples em fazer isso. Mais eu não estou sabendo de como trazer estas informações ai

 

OBS: esta página de html precisa manter da forma que esta o codigo ai apenas usar uma forma de usar as informações nela 

bom espero que tenha entendo o que preciso aqui...

 

segue o código 

 

Pagina canais.html

<!DOCTYPE html>
<html lang="pt-BR">
	<head>
		<meta charset="UTF-8">
		<meta name="language" content="pt-BR">
		<meta http-equiv="X-UA-Compatible" content="IE=edge">
		<meta name="viewport" content="width=device-width, initial-scale=1.0">
		<link rel="icon" href="{{ favicon }}">
      
 		{{ google_analytics }}
      
<title>{{ title }}</title>

<link rel="canonical" href="{{ url }}">

<meta name="description" content="{{ description }}">

<meta property="og:site_name" content="{{ site_name }}">
<meta property="og:title" content="{{ title }}">
<meta property="og:type" content="Website">
<meta property="og:url" content="{{ url }}">
<meta property="og:description" content="{{ description }}">
<meta property="og:image" content="{{ image }}">

<meta name="twitter:title" content="{{ title }}">
<meta name="twitter:url" content="{{ url }}">
<meta name="twitter:description" content="{{ description }}">
<meta name="twitter:site" content="{{ app_url }}">
<meta name="twitter:image" content="{{ image }}">

<meta itemprop="title" content="{{ title }}">
<meta itemprop="name" content="{{ name }}">
<meta itemprop="url" content="{{ url }}">
<meta itemprop="description" content="{{ description }}">
<meta itemprop="image" content="{{ image }}">

<meta property="fb:app_id" content="{{ fb_app_id }}">
<meta name="og:image:width" content="590">
<meta name="og:image:height" content="auto"> 
      
<link rel="stylesheet" href="{{ url }}assets/css/app_style.css"> 
<link rel="stylesheet" href="{{ url }}assets/style.css">  
      
      <!-- Pensei em chamar atraves de um script   -->
<script type="application/javascript" src="{{ url }}assets/js/script.js"></script> 
      
	  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
	  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
	  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>      
	<style>
		#container-wrapper-1 {background-size:cover;background-position:left top;background-image : url('images/{{ bg2 }}?v=1gr61cu');}
		#container-wrapper-2 {background-size:cover;background-position:left top;background-image : url('images/{{ bg3 }}?v=1gr61cu');}
		#container-wrapper-3 {background-size:cover;background-position:center top;background-image : url('images/{{ bg4 }}?v=1gr673m');}
		div#preloader { position: fixed; left: 0; top: 0; z-index: 999; width: 100%; height: 100%; overflow: visible; background: white no-repeat center center; }
		
		
		
.btn-800 {
    background-color: {{ background_color1 }};
    border-color: {{ border_color1 }};
  color: {{ color1 }};
 font-size:25px!important;
 margin: 10px;
  }
  .btn-800:hover {
    color: {{ color2 }};
    background-color: {{ background_color2 }};
    border-color: {{ border_color2 }};
    margin: 10px;
	}

.solucion {
  background-color: {{ background_color }};
  border-color: {{ border_color }};
  color: {{ color }};
width: 236px; 
 font-size:25px!important;
margin: 10px;
display: block;
text-align: center;
  }
  
  .solucion:hover {
    color: #fff;
    background-color: {{ background_color }};
    border-color: {{ border_color }};
    
width: 236px; 
margin: 10px; 
display: block; 
text-align: center; 
	}	
	</style>      
      
      
 	</head>

	<body> 
<div class="card">
    <div class="card-header white">
      <strong> {{ titulo_informacao }} </strong>
      <p> {{ resumo }} </p>
    </div>
  
	<p style="text-align: center; line-height: 2.05;">
      <span style="font-size: 20px;">{{ canais }}</span>
  </p>
	<p style="text-align: center; line-height: 2.05;">
      <strong>
        <span style="font-size: 30px;">{{ play }}</span>
      </strong>
  </p>  
</div>
      
  </body>
  
</html>

Então seria isso ai, 

só mais uma obs: toda vez que ser inserido ou atualizado os dados no banco que as informações seja atualizada tbm...

 

 

Desde de já fico no aguardo

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

9 respostas a esta questão

Recommended Posts

  • 0

Qual a linguagem back-end? Essa informação é vital.

 

De qualquer forma a duas alternativas.

1 (A mais correta e sensata) Renderizar a página e entregar para o usuário tudo completo, acredito que conseguiria fazer algo para isso usando um arquivo .html e alimentando os dados através do PHP.

2 (O menos eficiente) Pré renderizar a página, pós seu carregamento redefinir todos os valores através do javascript. O problema disso é justamente você ter que renderizar um padrão e substituir tudo depois de carregado. É até simples demais porém ineficiente tanto em usabilidade quanto em desempenho.

 

 

Em 27/12/2021 at 15:25, Jack Oliveira disse:

só mais uma obs: toda vez que ser inserido ou atualizado os dados no banco que as informações seja atualizada tbm

Aí você re-executa a coisa toda usando websocket

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0
9 horas atrás, Omar~ disse:

Qual a linguagem back-end? Essa informação é vital.

 

De qualquer forma a duas alternativas.

1 (A mais correta e sensata) Renderizar a página e entregar para o usuário tudo completo, acredito que conseguiria fazer algo para isso usando um arquivo .html e alimentando os dados através do PHP.

2 (O menos eficiente) Pré renderizar a página, pós seu carregamento redefinir todos os valores através do javascript. O problema disso é justamente você ter que renderizar um padrão e substituir tudo depois de carregado. É até simples demais porém ineficiente tanto em usabilidade quanto em desempenho.

 

 

Aí você re-executa a coisa toda usando websocket

 

Ola @Omar~ ela sera mostrada no FRONT

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0

Bom, eu presumo que a linguagem back-end seja o PHP.

 

Começando eu resumir o html só para alguns campos, mas já dar para ver como a coisa vai funcionar.

Então o arquivo.html:

Spoiler

<!DOCTYPE html>
<html lang="pt-BR">
    <head>
        <meta charset="UTF-8">
        <meta name="language" content="pt-BR">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <link rel="icon" href="{{ favicon }}">

        <title>{{ title }}</title>

        <meta name="description" content="{{ description }}">
        <link rel="stylesheet" href="{{ url }}assets/css/app_style.css">

        <script type="application/javascript" src="{{ url }}assets/js/script.js"></script> 
        <script>
            {{ google_analytics }}
        </script>
        <style>
            .card {
                background-color: {{ background_color1 }};
                color: {{ color1 }}
            }
        </style>
    </head>

    <body> 
        <div class="card">
            <!--
                A TAG <strong> foi removida no HTML 5
                Os navegadores ainda a reproduzem porque ainda existem
                centenas de milhares de páginas que não são html 5
                Mas será removida em um futuro breve.
            -->
            <span style="font-weight:bold"> {{ titulo_informacao }} </span>
            <p> {{ resumo }} </p>
        </div> 
    </body>
</html>

 

 

Então criei uma classe que irá pegar onde tem no html {{ alguma_coisa }} e substituir por dados vindos de um arrray no php:

Spoiler

<?php

/* Essa classe fixa o buffer do cabeçalho
 * Isso impedirá que o cabeçalho http seja entregue após executar os métodos daqui */

class RendeHtml {

    private $htmlBase;
    private $encontrarChave;
    private $substituirChave;
    private $htmlRenderizado;

    public function defineDados($arquivoHtml, $arrayDados = []) {
        $this->htmlBase = (string) $arquivoHtml;
        $this->existeHtml();
        $this->encontrarChave = [];
        $this->substituirChave = [];
        foreach ($arrayDados as $chave => $valor) {
            $this->encontrarChave[] = '{{ ' . $chave . ' }}';
            $this->substituirChave[] = $valor;
        }
        $this->substituirDados();
    }

    public function verHtml() {
        return (empty($this->htmlRenderizado) ? 'Não renderizado html de saída' : $this->htmlRenderizado);
    }

    private function existeHtml() {
        if (!file_exists($this->htmlBase)) {
            die('Erro ao encontrar arquivo html para gerar renderização');
        }
    }

    private function substituirDados() {
        ob_start();
        include($this->htmlBase);
        $fixarCabecalho = ob_get_clean();
        if (!empty($this->encontrarChave) && !empty($this->substituirChave)) {
            $this->htmlRenderizado = str_replace($this->encontrarChave, $this->substituirChave, $fixarCabecalho);
        }
    }

}

 

 

Daí então é só criar um array onde os índices terá o mesmo nome contido no que tem no html entre as chaves {{}}, os valores que serão inseridos nada mais que os valores dos índices com o mesmo nome.

Spoiler

<?php
require_once (__DIR__ . DIRECTORY_SEPARATOR . 'RendeHtml.php');

$vai_no_html = [ // Quais os dados vão ser adicionados ao html
    'favicon' => 'icone.ico',
    'title' => 'título da página',
    'description' => 'Descrição qualquer',
    'url' => 'https://endereco.com/',
    'google_analytics' => 'console.log(\'Um script javascript\')',
    'background_color1' => '#ff0000',
    'color1' => '#ffffff',
    'titulo_informacao' => 'Informação de título',
    'resumo' => 'Resumo qualquer'
];
$html = __DIR__ . DIRECTORY_SEPARATOR . 'arquivo.html'; // Endereço para o arquivo html

$renderizar = new RendeHtml();
$renderizar->defineDados($html, $vai_no_html);

echo ($renderizar->verHtml());

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0
2 horas atrás, Omar~ disse:

Bom, eu presumo que a linguagem back-end seja o PHP.

Sim tudo em php  apenas esta pagina que sera so html

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0

Ola @Omar~ fiz aqui para ver o resultado e não mostrou não as informações

 

Ou eu estou fazer da forma incorreta..

 

Os arquivos esta assim desta forma aqui

Admin/includes/RendeHtml.php   Aqui não mudei nada esta da mesma forma que tu apresentou ai..

<?php

/* Essa classe fixa o buffer do cabeçalho
 * Isso impedirá que o cabeçalho http seja entregue após executar os métodos daqui */

class RendeHtml {

    private $htmlBase;
    private $encontrarChave;
    private $substituirChave;
    private $htmlRenderizado;

    public function defineDados($arquivoHtml, $arrayDados = []) {
        $this->htmlBase = (string) $arquivoHtml;
        $this->existeHtml();
        $this->encontrarChave = [];
        $this->substituirChave = [];
        foreach ($arrayDados as $chave => $valor) {
            $this->encontrarChave[] = '{{ ' . $chave . ' }}';
            $this->substituirChave[] = $valor;
        }
        $this->substituirDados();
    }

    public function verHtml() {
        return (empty($this->htmlRenderizado) ? 'Não renderizado html de saída' : $this->htmlRenderizado);
    }

    private function existeHtml() {
        if (!file_exists($this->htmlBase)) {
            die('Erro ao encontrar arquivo html para gerar renderização');
        }
    }

    private function substituirDados() {
        ob_start();
        include($this->htmlBase);
        $fixarCabecalho = ob_get_clean();
        if (!empty($this->encontrarChave) && !empty($this->substituirChave)) {
            $this->htmlRenderizado = str_replace($this->encontrarChave, $this->substituirChave, $fixarCabecalho);
        }
    }

}
?>

Ja aqui neste outro arquivo

Admin/rendehtml.php   Aqui apenas deixei titulo e url para fazer o teste na pagina html

<?php
    require_once ('database/config.php');
	require_once ('database/config.painel.php');
	require_once ('database/config.database..php');
	require_once ('database/config.session.php');
	require_once ('includes/funcoes.php');
	require_once ('includes/RendeHtml.php');

	$sid = new Session;
	$sid->start();
	
	if (!$sid->check()){
		Redireciona('login.php');
	}



//require_once (__DIR__ . DIRECTORY_SEPARATOR . 'RendeHtml.php');

$vai_no_html = [ // Quais os dados vão ser adicionados ao html
    'titulo' => ConfigPainel('site_nome'),
    'url' => ConfigPainel('site_url')
];
$html = __DIR__ . DIRECTORY_SEPARATOR . '../canais.html'; // Endereço para o arquivo html

$renderizar = new RendeHtml();
$renderizar->defineDados($html, $vai_no_html);

echo ($renderizar->verHtml());

?>

na pagina html apenas isso aqui conforma tu mostra na pagina html tbm

 

<title>{{ titulo }}</title>

 

Ou estou fazendo errado aqui?

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0

Aparentemente deveria tudo funcionar como tal, tentei reproduzir o problema e a única coisa de anormal é se algum índice do array estiver vazio.

Depure os valores do array para ver:

Citar

$vai_no_html = [ // Quais os dados vão ser adicionados ao html
    'titulo' => ConfigPainel('site_nome'),
    'url' => ConfigPainel('site_url')
];
var_dump($vai_no_html);

E veja se os índices possuem algum valor.

De qualquer forma tente não usar a função ConfigPainel e escreva qualquer coisa aí para testar

Estou disponibilizando o link para do teste que fiz para você testar aí.

https://drive.google.com/file/d/1PSd5Nr2RYh8LKleIYnQgkymppf1lctcC/view?usp=sharing

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0

Estranho deve ser alguma configuração do apache que desconheço.

Tente então modificar a arquitetura e não usar um arquivo html e sim php. De fato fica até mais simples e prático.

 

<?php
$dados = [
    'titlo' => 'titulo da página',
    'texto' => 'um texto de teste'
];
$html = include ('estrutura.php');
echo $html;

Aí nesse estrutura.php é que você transcreve a página

<?php
$renderiza = '<!DOCTYPE html>'
. '<html lang="pt-BR">'
    . '<head>'
        . '<meta charset="UTF-8">'
        . '<title>' . $dados['titlo'] . '</title>'
    . '</head>'
    . '<body>'
        . '<p>' . $dados['texto'] . '</p>'
    . '</body>'
. '</html>';
return ($renderiza);

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por Giovanird
      Olá a todos!
      Tenho uma pagina que possui uma DIV onde coloquei uma pagina PHP.
      Uso a função setInterval para atualizar a pagina inclusa dentro da DIV.
      O problema é que ao acessar o site , a DIV só me mostra a pagina inclusa somente quando completo o primeiro minuto.
      Preciso que a pagina inclusa já inicie carregada
       
      Meu código JavaScript e a DIV com a pagina PHP
       
      <script> function atualiza(){ var url = 'direita.php'; $.get(url, function(dataReturn) { $('#direita').html(dataReturn); }); } setInterval("atualiza()",60000); </script> <div> <span id="direita"></span> </div>  
    • Por Thiago Duarte
      Oi, gostaria de arrastar imagem e ao soltar formar bloco html, meu bloco de html ficaria com nome, content-1.html, content-2.html, etc
       
      Alguem pode me ajudar?
    • Por belann
      Olá!
       
      Estou fazendo o upload de arquivos com fetch dessa forma
      fetch(url, {
              method: 'POST',
              headers: {'Content-Type': 'multipart/form-data',},
              body: formData 
          }).catch((error) => (console.log("Problemas com o Upload"), error));
       
      estou usando input type=file
      e criando uma const formData = new FormData(); 
      mas não faz e não dá nenhum erro.
      estou fazendo o upload com a url="http://localhost/dashboard/dados".
    • Por joeythai
      Boa tarde pessoal,
       
      Eu criei um formulário em que tenho 3 interações: evento click, change e uma chamada ajax. No evento on change ("select#removal_table_from" )eu faço uma chamada ajax onde eu passo como parametro o id do item selecionado e construo uma tabela dinamica com o próprio javascript, após isto, tenho um input em que o usuario coloca um valor de percentual para que eu possa preencher em 3 colunas da tabela que foi criada dinamicamente: moto_atualizado, carro_atualizado e caminhao_atualizado, até aí tudo bem, o codigo está fazendo isso, porém, como a tabela é criada dinamicamente eu preciso de alguma forma enviar o arrayData para meu backend mas quando faço o calculo dentro do loop apos resposta do meu ajax, os valores desses 3 campos chegam como null, não sei se é possível fazer o que pretendo ou se é ainda não sei como faz
       
      <code>
           $(document).ready(function (event) {   let arrayData = []; let percentage; let removal_vehicle; let removal_motorcycle; let removal_tuck; let apply_removal = $('#apply_removal');   // apply_removal.on('click', function () { // percentage = $('#percentage').val();   // $('.table-body tr').each(function () {   // let veiculo = $(this).find('.veiculo').text(); // let moto = $(this).find('.moto').text(); // let caminhao = $(this).find('.caminhao').text();   // let removal_vehicle = parseFloat(veiculo) + (parseFloat(veiculo) * parseFloat(percentage)) / 100; // let removal_motorcycle = parseFloat(moto) + (parseFloat(moto) * parseFloat(percentage)) / 100; // let removal_tuck = parseFloat(caminhao) + (parseFloat(caminhao) * parseFloat(percentage)) / 100;   // arrayData.push({ // removal_vehicle, // removal_motorcycle, // removal_tuck // })   // $(this).find('.veiculo_atualizado').val(removal_vehicle.toFixed(2)); // $(this).find('.moto_atualizado').val(removal_motorcycle.toFixed(2)); // $(this).find('.caminhao_atualizado').val(removal_tuck.toFixed(2)); // }); // });   apply_removal.on('click', function () { percentage = $('#percentage').val();   $('.table-body tr').each(function () {   let veiculo = $(this).find('.veiculo').text(); let moto = $(this).find('.moto').text(); let caminhao = $(this).find('.caminhao').text();   removal_vehicle = parseFloat(veiculo) + (parseFloat(veiculo) * parseFloat(percentage)) / 100; removal_motorcycle = parseFloat(moto) + (parseFloat(moto) * parseFloat(percentage)) / 100; removal_tuck = parseFloat(caminhao) + (parseFloat(caminhao) * parseFloat(percentage)) / 100;   arrayData.push({ removal_vehicle, removal_motorcycle, removal_tuck })   $(this).find('.veiculo_atualizado').val(removal_vehicle.toFixed(2)); $(this).find('.moto_atualizado').val(removal_motorcycle.toFixed(2)); $(this).find('.caminhao_atualizado').val(removal_tuck.toFixed(2));     console.log('Removal Vehicle:', removal_vehicle); console.log('Removal Motorcycle:', removal_motorcycle); console.log('Removal Truck:', removal_tuck); }); });   $('select#removal_table_from').on('change', function (e) { let table_id = $(this).val(); let action = route('removal.removal-values.show', table_id);   $.ajax({ type: "GET", url: action, headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') },   success: function (data) { $('.table-body').empty();   for (let i = 0; i < data.length; i++) { let carro = parseFloat(data[i].CARRO); let moto = parseFloat(data[i].MOTO); let caminhao = parseFloat(data[i].CAMINHAO); let distancia = data[i].DISTANCIA; let origem = data[i].ORIGEM; let destino = data[i].DESTINO; let localidadeOrigem = data[i].LocalidadeOrigem_ID; let localidadeDestino = data[i].LocalidadeDestino_ID;   let newRow = '<tr class="removal-row">' + '<td class="align-middle">' + '<div class="row">' + '<div class="col-1">' + '<span class="font-weight-bold">Origem</span><br>' + '<span class="origem">' + origem + '</span>' + '</div>' + '<div class="col-1">' + '<span class="font-weight-bold">Destino</span><br>' + '<span class="destino">' + destino + '</span>' + '</div>' + '<div class="col-1">' + '<span class="font-weight-bold">KM</span><br>' + '<span class="km">' + distancia + '</span>' + '</div>' + '<div class="col-1">' + '<span class="font-weight-bold">Veículo</span><br>' + '<span class="veiculo">' + carro + '</span>' + '</div>' + '<div class="col-2">' + '<span class="font-weight-bold">Veículo Atualizado</span><br>' + '<input type="text" class="veiculo_atualizado">' + '</div>' + '<div class="col-1">' + '<span class="font-weight-bold">Moto</span><br>' + '<span class="moto">' + moto + '</span>' + '</div>' + '<div class="col-2">' + '<span class="font-weight-bold">Moto Atualizado</span><br>' + '<input type="text" class="moto_atualizado">' + '</div>' + '<div class="col-1">' + '<span class="font-weight-bold">Caminhão</span><br>' + '<span class="caminhao">' + caminhao + '</span>' + '</div>' + '<div class="col-2">' + '<span class="font-weight-bold">Caminhão Atualizado</span><br>' + '<input type="text" class="caminhao_atualizado">' + '</div>' + '</div>' + '</div>' + '</td>' + '</tr>';   $('.table-body').append(newRow); //let row = $('.removal-row:last');   // Calcula o valor atualizado e define nos campos diretamente // let veiculo_atualizado = carro + (carro * percentage) / 100; // let moto_atualizado = moto + (moto * percentage) / 100; // let caminhao_atualizado = caminhao + (caminhao * percentage) / 100; // console.log('PORCENTS: ', percentage); //console.log('Veiculo Atualizado:', veiculo_atualizado, 'Moto Atualizado:', moto_atualizado, 'Caminhao Atualizado:', caminhao_atualizado);   // Define os valores diretamente nos campos da nova linha // row.find('.veiculo_atualizado').val(veiculo_atualizado.toFixed(2)); // row.find('.moto_atualizado').val(moto_atualizado.toFixed(2)); // row.find('.caminhao_atualizado').val(caminhao_atualizado.toFixed(2));   arrayData.push({ carro, moto, caminhao, distancia, origem, destino, localidadeOrigem, localidadeDestino, removal_vehicle, removal_motorcycle, removal_tuck }); }   $('#copy_data_table').val(JSON.stringify(arrayData)); }   }); });   //javascript para o formulario de cadastro // $(document).ready(function (event) { $('#uf').change(function () { let code_city = $(this).val(); let deposit = localStorage.getItem('selected_deposit_id'); let action = route('removal.removal-values.cities', code_city); $.ajax({ type: "POST", url: action, headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') }, data: { code_city: code_city },   success: function (data) {   $('#city').empty(); $('#deposit').empty();   for (let i = 0; i < data.cities.length; i++) { $('#city').append('<option value="' + data.cities[i].NM + '">' + data.cities[i].NM + '<option>'); }   if (data.deposits.length > 0) { for (let i = 0; i < data.deposits.length; i++) { $('#deposit').append('<option value="' + data.deposits[i].NM + '">' + data.deposits[i].NM + '<option>'); } } else { // $('#deposit').prop('disabled', true); // $('#city').prop('disabled', false); }   $('#city').trigger('change'); } });   });   $('#deposit').on('change', function () { depositId = $(this).val(); localStorage.setItem('selected_deposit_id', depositId); });   $('#uf_destiny').change(function () { let code_city = $(this).val(); let depositDestiny = localStorage.getItem('selected_deposit_destiny_id'); let action = route('removal.removal-values.cities', code_city); $.ajax({ type: "POST", url: action, headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') }, data: { code_city: code_city },   success: function (data) {   $('#city_destiny').empty(); $('#deposit_destiny').empty();   for (let i = 0; i < data.cities.length; i++) { $('#city_destiny').append('<option value="' + data.cities[i].NM + '">' + data.cities[i].NM + '</option>'); }   if (data.deposits.length > 0) { // $('#deposit_destiny').prop('disabled', false); //$('#city_destiny').empty(); // $('#city_destiny').prop('disabled', true); for (let i = 0; i < data.deposits.length; i++) { $('#deposit_destiny').append('<option value="' + data.deposits[i].NM + '">' + data.deposits[i].NM + '</option>'); } } else { // $('#deposit_destiny').prop('disabled', true); // $('#city_destiny').prop('disabled', false); }   $('#city_destiny').trigger('change'); } }); });   $('#deposit_destiny').on('change', function () { let depositDestinyId = $(this).val(); localStorage.setItem('selected_deposit_destiny_id', depositDestinyId); });   }); </code>
    • Por gersonab
      Bom dia a todos, estou usando o datatable com uma consulta mysql e funciona 100% , meu único problema é na hora que eu exporto para pdf, este não vem com sua largura da tabela exportada em 100%, dependendo da situação ocupa apenas 30% da página, infelizmente após varias pesquisas ainda não encontrei uma forma de fazer.
      segue meu código de forma simples:
      $('#exportar').DataTable( { language: { url: '//cdn.datatables.net/plug-ins/1.13.7/i18n/pt-BR.json', }, dom: 'Bfrtip', order: [[ 0, 'desc' ]], buttons: [ 'pdfHtml5' ] } ); desde já agradeço toda ajuda possível
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.