{"id":170,"date":"2016-07-25T15:43:25","date_gmt":"2016-07-25T18:43:25","guid":{"rendered":"http:\/\/www.ctasoftware.com.br\/blog\/?p=170"},"modified":"2016-07-25T15:43:25","modified_gmt":"2016-07-25T18:43:25","slug":"paginacao-angularjs-dirpagination","status":"publish","type":"post","link":"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/","title":{"rendered":"Pagina\u00e7\u00e3o AngularJS &#8211; dirPagination"},"content":{"rendered":"<p>Umas das coisas que mais utilizo nos projetos que desenvolvo s\u00e3o as pagina\u00e7\u00f5es, automaticamente n\u00e3o me dei conta da quantidade de pessoas que necessitam utilizar fun\u00e7\u00f5es similar.<\/p>\n<p>Utilizo com muita frequ\u00eancia o dirpagination. T\u00e3o f\u00e1cil de usar quanto&#8230;<\/p>\n<p>Incluo na declara\u00e7\u00e3o do meu m\u00f3dulo:<\/p>\n<p><strong>var app = angular.module(&#8216;App&#8217;, [&#8216;angularUtils.directives.dirPagination&#8217;]);<\/strong><\/p>\n<p>Ao inv\u00e9s de\u00a0<em>&lt;tr ng-repeat=&#8221;obj in listaDeItens&#8221;&gt;<\/em> passo a utilizar<strong>\u00a0&lt;tr dir-paginate=&#8221;obj in listaDeItens\u00a0|itemsPerPage:10&#8243;&gt;\u00a0<\/strong><\/p>\n<p>Em seguida incluo os bot\u00f5es de navega\u00e7\u00e3o:\u00a0&lt;dir-pagination-controls max-size=&#8221;8&#8243; direction-links=&#8221;true&#8221; boundary-links=&#8221;true&#8221;&gt;&lt;\/dir-pagination-controls&gt;<\/p>\n<p>Simples n\u00e3o?<\/p>\n<p>Resultado final:<\/p>\n<blockquote><p>&lt;table class=&#8221;table&#8221;&gt;<br \/>\n&lt;thead&gt;<br \/>\n&lt;th&gt;NOME&lt;\/th&gt;<br \/>\n&lt;th&gt;VALOR&lt;\/th&gt;<br \/>\n&lt;\/tr&gt;<br \/>\n&lt;\/thead&gt;<br \/>\n&lt;tbody&gt;<br \/>\n&lt;tr dir-paginate=&#8221;obj in ListaDeItens\u00a0|itemsPerPage:10&#8243;&gt;<br \/>\n&lt;td&gt;{{obj.name}}&lt;\/td&gt;<br \/>\n&lt;td&gt;{{obj.price | currency: &#8220;R$ &#8220;}}&lt;\/td&gt;<br \/>\n&lt;\/tr&gt;<br \/>\n&lt;\/tbody&gt;<br \/>\n&lt;\/table&gt;<br \/>\n&lt;dir-pagination-controls max-size=&#8221;8&#8243; direction-links=&#8221;true&#8221; boundary-links=&#8221;true&#8221;&gt;&lt;\/dir-pagination-controls&gt;<\/p><\/blockquote>\n<p>N\u00e3o expliquei como usar e declarar meu m\u00f3dulo, classes, objetos, etc. Basicamente explico o uso do dirpagination. Ah&#8230; o JS que deve ser inclu\u00eddo no projeto, basta baixar no gitbut\u00a0https:\/\/github.com\/michaelbromley\/angularUtils\/tree\/master\/src\/directives\/pagination<\/p>\n<p>At\u00e9 a pr\u00f3xima.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Umas das coisas que mais utilizo nos projetos que desenvolvo s\u00e3o as pagina\u00e7\u00f5es, automaticamente n\u00e3o me dei conta da quantidade de pessoas que necessitam utilizar fun\u00e7\u00f5es similar. Utilizo com muita frequ\u00eancia o dirpagination. T\u00e3o f\u00e1cil de usar quanto&#8230; Incluo na declara\u00e7\u00e3o do meu m\u00f3dulo: var app = angular.module(&#8216;App&#8217;, [&#8216;angularUtils.directives.dirPagination&#8217;]); Ao inv\u00e9s de\u00a0&lt;tr ng-repeat=&#8221;obj in listaDeItens&#8221;&gt; [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","footnotes":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false}}},"categories":[49],"tags":[50,51],"jetpack_publicize_connections":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.1 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Pagina\u00e7\u00e3o AngularJS - dirPagination - CTASoftware Blog<\/title>\n<meta name=\"description\" content=\"CTASoftware Blog Pagina\u00e7\u00e3o AngularJS - dirPagination\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Pagina\u00e7\u00e3o AngularJS - dirPagination - CTASoftware Blog\" \/>\n<meta property=\"og:description\" content=\"CTASoftware Blog Pagina\u00e7\u00e3o AngularJS - dirPagination\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/\" \/>\n<meta property=\"og:site_name\" content=\"CTASoftware Blog\" \/>\n<meta property=\"article:published_time\" content=\"2016-07-25T18:43:25+00:00\" \/>\n<meta name=\"author\" content=\"Everton Gon\u00e7alves\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Everton Gon\u00e7alves\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minuto\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/\"},\"author\":{\"name\":\"Everton Gon\u00e7alves\",\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/#\/schema\/person\/34f7fa2c76834d8410f6dd43e26fd3e4\"},\"headline\":\"Pagina\u00e7\u00e3o AngularJS &#8211; dirPagination\",\"datePublished\":\"2016-07-25T18:43:25+00:00\",\"dateModified\":\"2016-07-25T18:43:25+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/\"},\"wordCount\":237,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/#organization\"},\"keywords\":[\"AngularJS\",\"HTML\"],\"articleSection\":[\"AngularJS\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/\",\"url\":\"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/\",\"name\":\"Pagina\u00e7\u00e3o AngularJS - dirPagination - CTASoftware Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/#website\"},\"datePublished\":\"2016-07-25T18:43:25+00:00\",\"dateModified\":\"2016-07-25T18:43:25+00:00\",\"description\":\"CTASoftware Blog Pagina\u00e7\u00e3o AngularJS - dirPagination\",\"breadcrumb\":{\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\/\/www.ctasoftware.com.br\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Pagina\u00e7\u00e3o AngularJS &#8211; dirPagination\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/#website\",\"url\":\"https:\/\/www.ctasoftware.com.br\/blog\/\",\"name\":\"CTASoftware Blog\",\"description\":\"Para Desenvolvedores De Software\",\"publisher\":{\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.ctasoftware.com.br\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/#organization\",\"name\":\"CTASoftware\",\"url\":\"https:\/\/www.ctasoftware.com.br\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/i0.wp.com\/www.ctasoftware.com.br\/blog\/wp-content\/uploads\/2023\/06\/logocta.png?fit=225%2C44&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/www.ctasoftware.com.br\/blog\/wp-content\/uploads\/2023\/06\/logocta.png?fit=225%2C44&ssl=1\",\"width\":225,\"height\":44,\"caption\":\"CTASoftware\"},\"image\":{\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/#\/schema\/person\/34f7fa2c76834d8410f6dd43e26fd3e4\",\"name\":\"Everton Gon\u00e7alves\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.ctasoftware.com.br\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/3e5e7fe964521f618a2b09d3fbb7800f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/3e5e7fe964521f618a2b09d3fbb7800f?s=96&d=mm&r=g\",\"caption\":\"Everton Gon\u00e7alves\"},\"description\":\"http:\/\/www.ctasoftware.com.br\",\"sameAs\":[\"http:\/\/www.ctasoftware.com.br\"],\"url\":\"https:\/\/www.ctasoftware.com.br\/blog\/author\/everton-goncalves\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Pagina\u00e7\u00e3o AngularJS - dirPagination - CTASoftware Blog","description":"CTASoftware Blog Pagina\u00e7\u00e3o AngularJS - dirPagination","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/","og_locale":"pt_BR","og_type":"article","og_title":"Pagina\u00e7\u00e3o AngularJS - dirPagination - CTASoftware Blog","og_description":"CTASoftware Blog Pagina\u00e7\u00e3o AngularJS - dirPagination","og_url":"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/","og_site_name":"CTASoftware Blog","article_published_time":"2016-07-25T18:43:25+00:00","author":"Everton Gon\u00e7alves","twitter_misc":{"Escrito por":"Everton Gon\u00e7alves","Est. tempo de leitura":"1 minuto"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/#article","isPartOf":{"@id":"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/"},"author":{"name":"Everton Gon\u00e7alves","@id":"https:\/\/www.ctasoftware.com.br\/blog\/#\/schema\/person\/34f7fa2c76834d8410f6dd43e26fd3e4"},"headline":"Pagina\u00e7\u00e3o AngularJS &#8211; dirPagination","datePublished":"2016-07-25T18:43:25+00:00","dateModified":"2016-07-25T18:43:25+00:00","mainEntityOfPage":{"@id":"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/"},"wordCount":237,"commentCount":0,"publisher":{"@id":"https:\/\/www.ctasoftware.com.br\/blog\/#organization"},"keywords":["AngularJS","HTML"],"articleSection":["AngularJS"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/","url":"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/","name":"Pagina\u00e7\u00e3o AngularJS - dirPagination - CTASoftware Blog","isPartOf":{"@id":"https:\/\/www.ctasoftware.com.br\/blog\/#website"},"datePublished":"2016-07-25T18:43:25+00:00","dateModified":"2016-07-25T18:43:25+00:00","description":"CTASoftware Blog Pagina\u00e7\u00e3o AngularJS - dirPagination","breadcrumb":{"@id":"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.ctasoftware.com.br\/blog\/paginacao-angularjs-dirpagination\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/www.ctasoftware.com.br\/blog\/"},{"@type":"ListItem","position":2,"name":"Pagina\u00e7\u00e3o AngularJS &#8211; dirPagination"}]},{"@type":"WebSite","@id":"https:\/\/www.ctasoftware.com.br\/blog\/#website","url":"https:\/\/www.ctasoftware.com.br\/blog\/","name":"CTASoftware Blog","description":"Para Desenvolvedores De Software","publisher":{"@id":"https:\/\/www.ctasoftware.com.br\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.ctasoftware.com.br\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"pt-BR"},{"@type":"Organization","@id":"https:\/\/www.ctasoftware.com.br\/blog\/#organization","name":"CTASoftware","url":"https:\/\/www.ctasoftware.com.br\/blog\/","logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.ctasoftware.com.br\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/www.ctasoftware.com.br\/blog\/wp-content\/uploads\/2023\/06\/logocta.png?fit=225%2C44&ssl=1","contentUrl":"https:\/\/i0.wp.com\/www.ctasoftware.com.br\/blog\/wp-content\/uploads\/2023\/06\/logocta.png?fit=225%2C44&ssl=1","width":225,"height":44,"caption":"CTASoftware"},"image":{"@id":"https:\/\/www.ctasoftware.com.br\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.ctasoftware.com.br\/blog\/#\/schema\/person\/34f7fa2c76834d8410f6dd43e26fd3e4","name":"Everton Gon\u00e7alves","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.ctasoftware.com.br\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/3e5e7fe964521f618a2b09d3fbb7800f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3e5e7fe964521f618a2b09d3fbb7800f?s=96&d=mm&r=g","caption":"Everton Gon\u00e7alves"},"description":"http:\/\/www.ctasoftware.com.br","sameAs":["http:\/\/www.ctasoftware.com.br"],"url":"https:\/\/www.ctasoftware.com.br\/blog\/author\/everton-goncalves\/"}]}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p6ACmG-2K","jetpack-related-posts":[{"id":189,"url":"https:\/\/www.ctasoftware.com.br\/blog\/ordenar-tabela-com-angularjs\/","url_meta":{"origin":170,"position":0},"title":"Ordenar Tabela com AngularJS","author":"Everton Gon\u00e7alves","date":"30 de novembro de 2016","format":false,"excerpt":"Uma forma pr\u00e1tica de ordenar tabela utilizando AngularJS atrav\u00e9s do ng-repeat [html] table class=\"table\" tbody tr ng-repeat=\"atual in ListaProduto| orderBy:'+nomeProduto'\" td {{atual.nomeProduto}} \/td \/tr [\/html] Utilizando o orderBy \u00e9 poss\u00edvel ordenar pelo nome da propriedade, neste caso o nome da propriedade \u00e9 \"nomeProduto\", utilize o sinal de + para crescente\u2026","rel":"","context":"Em &quot;AngularJS&quot;","block_context":{"text":"AngularJS","link":"https:\/\/www.ctasoftware.com.br\/blog\/category\/angularjs\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":36,"url":"https:\/\/www.ctasoftware.com.br\/blog\/webservice-de-cep-dos-correios-php-e-jquery\/","url_meta":{"origin":170,"position":1},"title":"WebService de CEP dos Correios PHP e JQuery","author":"Everton Gon\u00e7alves","date":"7 de abril de 2012","format":false,"excerpt":"Necess\u00e1rio download do JQuery no link http:\/\/code.google.com\/p\/jqueryjs\/downloads\/detail?name=jquery-1.2.6.js&can=2&q= \u00a0 <html> <head> <title>WebService CEP<\/title> <meta http-equiv=\"Content-Type\" content=\"text\/html; charset=utf-8\" \/> <!-- Insere o jquery --> <script type=\"text\/javascript\" src=\"jquery-1.2.6.js\"><\/script> <script type=\"text\/javascript\" > \u00a0 \u00a0 $(document).ready(function(){ \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \/\/Preenche os campos na a&#231;&#227;o \"Blur\" (mudar de campo) \u00a0 \u00a0\u2026","rel":"","context":"Em &quot;PHP&quot;","block_context":{"text":"PHP","link":"https:\/\/www.ctasoftware.com.br\/blog\/category\/php\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":199,"url":"https:\/\/www.ctasoftware.com.br\/blog\/formatacao-de-moeda-real-angularjs\/","url_meta":{"origin":170,"position":2},"title":"Formata\u00e7\u00e3o de Moeda Real AngularJS","author":"Everton Gon\u00e7alves","date":"1 de dezembro de 2016","format":false,"excerpt":"Como sabemos para formatar moedas no AngularJS utilizamos o currency, por\u00e9m a configura\u00e7\u00e3o de moeda \u00e9 utilizada a do servidor onde nossa aplica\u00e7\u00e3o est\u00e1 publicada, ou seja, se tivermos em um servidor Norte Americano, ser\u00e1 retornado o s\u00edmbolo '$' e n\u00e3o 'R$' como gostar\u00edamos. Para corre\u00e7\u00e3o utilize: [html] {{model.valor |\u2026","rel":"","context":"Em &quot;AngularJS&quot;","block_context":{"text":"AngularJS","link":"https:\/\/www.ctasoftware.com.br\/blog\/category\/angularjs\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":218,"url":"https:\/\/www.ctasoftware.com.br\/blog\/verificar-se-usuario-faz-parte-de-grupo-sharepoint\/","url_meta":{"origin":170,"position":3},"title":"Verificar se usu\u00e1rio faz parte de grupo SharePoint","author":"Everton Gon\u00e7alves","date":"12 de abril de 2017","format":false,"excerpt":"A fun\u00e7\u00e3o abaixo retorna se o usu\u00e1rio SharePoint faz parte de um determinado grupo. Se o retorno for verdadeiro o usu\u00e1rio faz parte do grupo. [js] function isMember(groupName) { var obj = null; var url = _spPageContextInfo.webAbsoluteUrl + \"\/_api\/web\/sitegroups\/getByName('\"+groupName+\"')\/Users?$filter=Id eq \" + _spPageContextInfo.userId; var requestHeaders = { \"accept\" : \"application\/json;odata=verbose\"\u2026","rel":"","context":"Em &quot;JavaScript&quot;","block_context":{"text":"JavaScript","link":"https:\/\/www.ctasoftware.com.br\/blog\/category\/javascript\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":290,"url":"https:\/\/www.ctasoftware.com.br\/blog\/verificar-se-tem-anexo-sharepoint-2013\/","url_meta":{"origin":170,"position":4},"title":"Verificar se Tem Anexo SharePoint 2013","author":"Everton Gon\u00e7alves","date":"6 de setembro de 2017","format":false,"excerpt":"M\u00e9todo para verificar se tem anexo na lista SharePoint. [js] function VerificaSeTemAnexo(){ var existeArquivo = false; $('#idAttachmentsTable').find('tbody').find('tr').each(function () { existeArquivo = true; }); return existeArquivo; } [\/js] Inclua esse m\u00e9todo no PreSave() do seu .js para bloquear caso n\u00e3o tenha sido inserido um anexo. At\u00e9 a Pr\u00f3xima!","rel":"","context":"Em &quot;JavaScript&quot;","block_context":{"text":"JavaScript","link":"https:\/\/www.ctasoftware.com.br\/blog\/category\/javascript\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":42,"url":"https:\/\/www.ctasoftware.com.br\/blog\/classe-para-exportar-gridview-para-excel\/","url_meta":{"origin":170,"position":5},"title":"Classe para exportar GridView para Excel","author":"Everton Gon\u00e7alves","date":"14 de abril de 2012","format":false,"excerpt":"Essa semana tive que exportar os dados de uma GridView para uma planilha Excel, bom... sabia que n\u00e3o era algo muito complicado, mas tamb\u00e9m nunca tinha feito, sendo assim realizei uma busca no grande mestre Google e encontrei uma classe que me atendeu muito bem. F\u00e1cil e descomplicado. using using\u2026","rel":"","context":"Em &quot;.NET&quot;","block_context":{"text":".NET","link":"https:\/\/www.ctasoftware.com.br\/blog\/category\/net\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/www.ctasoftware.com.br\/blog\/wp-json\/wp\/v2\/posts\/170"}],"collection":[{"href":"https:\/\/www.ctasoftware.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ctasoftware.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ctasoftware.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ctasoftware.com.br\/blog\/wp-json\/wp\/v2\/comments?post=170"}],"version-history":[{"count":1,"href":"https:\/\/www.ctasoftware.com.br\/blog\/wp-json\/wp\/v2\/posts\/170\/revisions"}],"predecessor-version":[{"id":171,"href":"https:\/\/www.ctasoftware.com.br\/blog\/wp-json\/wp\/v2\/posts\/170\/revisions\/171"}],"wp:attachment":[{"href":"https:\/\/www.ctasoftware.com.br\/blog\/wp-json\/wp\/v2\/media?parent=170"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ctasoftware.com.br\/blog\/wp-json\/wp\/v2\/categories?post=170"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ctasoftware.com.br\/blog\/wp-json\/wp\/v2\/tags?post=170"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}