{"id":119,"date":"2024-12-27T19:22:40","date_gmt":"2024-12-27T22:22:40","guid":{"rendered":"https:\/\/recover.rdconsolo.com.br\/?p=119"},"modified":"2024-12-27T19:36:56","modified_gmt":"2024-12-27T22:36:56","slug":"atualizando-estado-da-linha-da-tabela-com-jquery","status":"publish","type":"post","link":"https:\/\/rdconsolo.com.br\/?p=119","title":{"rendered":"Atualizando estado da linha da tabela com jQuery"},"content":{"rendered":"\n<p>De acordo com o conte\u00fado de cada linha de uma tabela html podemos modificar as propriedades dos elementos usando jQuery.<\/p>\n\n\n\n<p>No exemplo abaixo temos uma tabela onde atribu\u00edmos os valores a serem observados nos campos data dentro da tag &lt;tr&gt;.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"markup\" class=\"language-markup line-numbers\">&lt;form action=\"&lt;?= $acao_aplicar ?&gt;\" method=\"post\" id=\"form1\"&gt;\n    &lt;input type=\"hidden\" name=\"id_requisicao\" value=\"&lt;?= $requisicao-&gt;id ?&gt; \"&gt;\n    &lt;table class=\"table table-sm small table-striped\" id=\"itensTable\"&gt;\n        &lt;thead&gt;\n            &lt;tr&gt;\n                &lt;th&gt;Item&lt;\/th&gt;\n                &lt;th&gt;Produto&lt;\/th&gt;\n                &lt;th&gt;Descri\u00e7\u00e3o&lt;\/th&gt;\n                &lt;th&gt;Unidade&lt;\/th&gt;\n                &lt;th class=\"text-end\"&gt;Qt. Calculada&lt;\/th&gt;\n                &lt;th class=\"text-end\"&gt;Saldo&lt;\/th&gt;\n                &lt;th width=\"140px\" class=\"text-end\"&gt;Qt. Solicitada&lt;\/th&gt;\n            &lt;\/tr&gt;\n        &lt;\/thead&gt;\n\n        &lt;tbody&gt;\n            &lt;?php foreach ($itens as $row): ?&gt;\n                &lt;tr class=\"align-middle\" data-produto-ativo=\"&lt;?= $row-&gt;produto_ativo ?&gt;\"\n                    data-quantidade=\"&lt;?= $row-&gt;qt_solicitada ?&gt;\"&gt;\n                    &lt;!-- item --&gt;\n                    &lt;td&gt;\n                        &lt;?= $row-&gt;item ?&gt;\n                    &lt;\/td&gt;\n                    &lt;!-- produto --&gt;\n                    &lt;td&gt;\n                        &lt;?= $row-&gt;produto_codigo ?&gt;\n                    &lt;\/td&gt;\n                    &lt;!-- descricao --&gt;\n                    &lt;td&gt;\n                        &lt;?= $row-&gt;produto_descricao ?&gt;\n                    &lt;\/td&gt;\n                    &lt;!-- unidade --&gt;\n                    &lt;td&gt;\n                        &lt;?= $row-&gt;produto_unidade ?&gt;\n                    &lt;\/td&gt;\n                    &lt;!-- quantidade calculada --&gt;\n                    &lt;td class=\"text-end\"&gt;\n                        &lt;?= number_format($row-&gt;qt_calculada, 3, ',', '.') ?&gt;\n                    &lt;\/td&gt;\n                    &lt;!-- saldo --&gt;\n                    &lt;td class=\"text-end\"&gt;\n                        &lt;?= number_format($row-&gt;saldo, 3, ',', '.') ?&gt;\n                    &lt;\/td&gt;\n                    &lt;!-- quantidade solicitada --&gt;\n                    &lt;td&gt;\n                        &lt;input type=\"hidden\" name=\"id[]\" value=\"&lt;?= $row-&gt;id ?&gt;\"&gt;\n                        &lt;input type=\"number\" style=\"text-align:right\" class=\"form-control form-control-sm\"\n                               name=\"qt_solicitada[]\" value=\"&lt;?= $row-&gt;qt_solicitada ?&gt;\" required&gt;\n                    &lt;\/td&gt;\n                &lt;\/tr&gt;\n            &lt;?php endforeach ?&gt;\n        &lt;\/tbody&gt;\n\n    &lt;\/table&gt;\n&lt;\/form&gt;<\/code><\/pre>\n\n\n\n<p>Em seguida, o c\u00f3digo jQuery faz as altera\u00e7\u00f5es nos elementos.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript line-numbers\">&lt;script&gt;\n    $(document).ready(function () {\n        $('#itensTable tbody tr').each(function () {\n            var produto_ativo = $(this).data('produto-ativo');\n            var quantidade = $(this).data('quantidade');\n            if (produto_ativo === 'f') {\n                $(this).find('td').addClass('text-danger');\n                $(this).find('input').prop('disabled', true);\n                $(this).find('input').prop('required', false);\n            }\n            if (quantidade == 0) {\n                $(this).find('td').addClass('text-secondary');\n                $(this).find('input').prop('disabled', true);\n                $(this).find('input').prop('required', false);\n            }\n        });\n    });\n&lt;\/script&gt;<\/code><\/pre>\n\n\n\n<p>Dica: <strong>nunca<\/strong> utilize <strong>underscore<\/strong> nos nomes dos campos <strong>data<\/strong> (ex: data-produto_inativo).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>De acordo com o conte\u00fado de cada linha de uma tabela html podemos modificar as propriedades dos elementos usando jQuery. No exemplo abaixo temos uma tabela onde atribu\u00edmos os valores a serem observados nos campos data dentro da tag &lt;tr&gt;. Em seguida, o c\u00f3digo jQuery faz as altera\u00e7\u00f5es nos elementos. Dica: nunca utilize underscore nos &hellip; <a href=\"https:\/\/rdconsolo.com.br\/?p=119\" class=\"more-link\">Continue lendo<span class=\"screen-reader-text\"> &#8220;Atualizando estado da linha da tabela com jQuery&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[30],"tags":[34],"class_list":["post-119","post","type-post","status-publish","format-standard","hentry","category-developer","tag-jquery"],"_links":{"self":[{"href":"https:\/\/rdconsolo.com.br\/index.php?rest_route=\/wp\/v2\/posts\/119","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rdconsolo.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rdconsolo.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rdconsolo.com.br\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rdconsolo.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=119"}],"version-history":[{"count":3,"href":"https:\/\/rdconsolo.com.br\/index.php?rest_route=\/wp\/v2\/posts\/119\/revisions"}],"predecessor-version":[{"id":137,"href":"https:\/\/rdconsolo.com.br\/index.php?rest_route=\/wp\/v2\/posts\/119\/revisions\/137"}],"wp:attachment":[{"href":"https:\/\/rdconsolo.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=119"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rdconsolo.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=119"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rdconsolo.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=119"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}