{"id":1199,"date":"2011-05-10T15:30:30","date_gmt":"2011-05-10T14:30:30","guid":{"rendered":"http:\/\/www.donatantonio.net\/blog\/?p=1199"},"modified":"2011-07-18T23:38:08","modified_gmt":"2011-07-18T22:38:08","slug":"jquery-il-metodo-text","status":"publish","type":"post","link":"https:\/\/www.donatantonio.net\/blog\/guide_tutorial\/javascript\/jquery-il-metodo-text\/","title":{"rendered":"JQuery, il metodo .text()"},"content":{"rendered":"<p>In un <a title=\"Il metodo .html() di jQuery\" href=\"http:\/\/www.donatantonio.net\/blog\/?p=1188\" target=\"_blank\">articolo precedente<\/a> abbiamo visto le potenzialit\u00e0 e gli usi pratici del metodo .html() di jQuery.<br \/>\nEsiste per\u00f2 un metodo che per certi aspetti somiglia molto a quello appena citato, sia per funzionalit\u00e0 che per sintassi, il metodo <span style=\"color: #ff0000;\">.text()<\/span>.<\/p>\n<p>Questo metodo ci permette di leggere e scrivere il contenuto di un elemento HTML che compone la pagina. A differenza per\u00f2 di .html(), il metodo .text() accede esclusivamente ai <strong>textNode<\/strong>, operando quindi solo sul testo e tralasciando i tag HTML.<br \/>\nChiariamo questo concetto introducendo la sintassi del metodo .text():<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n$('#id_blocco').text();\r\n<\/pre>\n<p>Con questa linea di codice stiamo accedendo ai <em>contenuti testuali <\/em>dell&#8217;elemento identificato tramite id. Se ad esempio avessimo un DIV cos\u00ec definito:<\/p>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">\r\n&lt;div id='my_div'&gt;\r\n    Questo \u00e8 un blocco di esempio.&lt;br\/&gt;\r\n    Contiene un elenco:\r\n    &lt;ul&gt;\r\n        &lt;li&gt;Voce 1&lt;\/li&gt;\r\n        &lt;li&gt;Voce 2&lt;\/li&gt;\r\n    &lt;\/ul&gt;\r\n&lt;\/div&gt;\r\n<\/pre>\n<p>richiamando il metodo text() sul div con la seguente sintassi:<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\nvar testo = $('#my_div').text();\r\n<\/pre>\n<p>avvaloreremo la variabile &#8220;<em>testo<\/em>&#8221; con la seguente stringa:<\/p>\n<p><strong>Questo \u00e8 un blocco di esempio. Contiene un elenco: Voce 1 Voce 2<\/strong><\/p>\n<p>Ci\u00f2 che \u00e8 importante notare \u00e8 che il metodo restituisce <span style=\"color: #ff0000;\">esclusivamente i nodi di testo<\/span>. I tag HTML non vengono considerati testo e dell&#8217;elenco che abbiamo definito \u00e8 stato restuito solo il testo, quindi il contenuto dei tag &lt;li&gt;.<\/p>\n<p>Come detto ad inizio articolo, il metodo .text() pu\u00f2 essere utilizzato anche per <strong>scrivere testo <\/strong>all&#8217;interno di un blocco HTML. La sintassi \u00e8 semplice e del tutto simile a quella del metodo .html():<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n$('#id_blocco').text('Testo da inserire');\r\n<\/pre>\n<p>Il metodo accetta come parametro una stringa, la quale verr\u00e0 scritta all&#8217;interno dell&#8217;elemento identificato tramite ID.<br \/>\nUna caratteristica importante da tenere in considerazione \u00e8 che l&#8217;istruzione precedente, se richiamata su un elemento contenente a sua volta altri elementi HTML, <em>sovrascrive tutto il contenuto<\/em>, realizzando quindi un semplice nodo di testo.<br \/>\nE&#8217; interessante notare, inoltre, cosa accade quando la stringa in input al metodo contiene codice HTML, in questo caso il codice non verr\u00e0 interpretato, bens\u00ec verr\u00e0 convertito in una semplice stringa di testo.<\/p>\n<p>Infine vediamo tre funzioni parametrizzate che utilizzano il metodo .text():<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n\/\/ Funzione che restituisce il testo contenuto in un elemento\r\nfunction GetText(id){\r\n    var testo = $('#'+id).text();\r\n    alert('Il testo contenuto \u00e8:\\n\\n'+testo);\r\n}\r\n\/\/ Funzione che scrive un testo in un elemento\r\nfunction SetText(id,testo){\r\n    $('#'+id).text(testo);\r\n}\r\n\/\/ Funzione che aggiunge testo ad un elemento\r\nfunction AddText(id,new_testo){\r\n    var testo = $('#'+id).text();\r\n    $('#'+id).text(testo+new_testo);\r\n}\r\n<\/pre>\n<p>Nonostante il metodo .text() possa risultare meno utile del metodo .html(), offre molteplici spunti progettuali.<br \/>\nLe funzioni viste sono state <strong>raccolte in una pagina web d\u2019esempio<\/strong>.<\/p>\n<p><strong>Cliccando <a title=\"Esempio metodo .text()\" href=\"http:\/\/www.donatantonio.net\/script\/jquery_text\/\" target=\"_blank\">qui<\/a><\/strong> \u00e8 possibile vedere in azione il codice.<\/p>\n<p><strong>Cliccando <a title=\"Scarica esempio metodo .text()\" href=\"http:\/\/www.donatantonio.net\/script\/jquery_text.rar\" target=\"_blank\">qui<\/a><\/strong> \u00e8 possibile scaricare il codice.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In un articolo precedente abbiamo visto le potenzialit\u00e0 e gli usi pratici del metodo .html() di jQuery.<br \/>\nEsiste per\u00f2 un metodo che per certi aspetti somiglia molto a quello appena citato, sia per funzionalit\u00e0 che per sintassi, il metodo .text().<\/p>\n<p>Questo metodo ci permette di leggere e scrivere il contenuto di un elemento HTML che compone la pagina. A differenza per\u00f2 di .html(), il metodo .text() accede esclusivamente ai textNode, operando quindi solo sul testo e tralasciando i tag HTML.<br \/>\nChiariamo questo concetto introducendo la sintassi del metodo .text():<\/p>\n<p>$(&#8216;#id_blocco&#8217;).text();<\/p>\n<p>Con questa linea di codice stiamo accedendo ai <em>contenuti testuali <\/em>dell&#8217;elemento identificato tramite id. Se ad esempio avessimo un DIV cos\u00ec definito:<\/p>\n<p>&lt;div id=&#8217;my_div&#8217;&gt;<br \/>\n    Questo \u00e8 un blocco di esempio.&lt;br\/&gt;<br \/>\n    Contiene un elenco:<br \/>\n    &lt;ul&gt;<br \/>\n        &lt;li&gt;Voce 1&lt;\/li&gt;<br \/>\n        &lt;li&gt;Voce 2&lt;\/li&gt;<br \/>\n    &lt;\/ul&gt;<br \/>\n&lt;\/div&gt;<\/p>\n<p>richiamando il metodo text() sul div con la seguente sintassi:<\/p>\n<p>var testo = $(&#8216;#my_div&#8217;).text();<\/p>\n<p>avvaloreremo la variabile &#8220;<em>testo<\/em>&#8221; con la seguente stringa:<\/p>\n<p>Questo \u00e8 un blocco di esempio. Contiene un elenco: Voce 1 Voce 2<\/p>\n<p>Ci\u00f2 che \u00e8 importante notare \u00e8 che il metodo restituisce esclusivamente i nodi di testo. I tag HTML non vengono considerati testo e dell&#8217;elenco che abbiamo definito \u00e8 stato restuito solo il testo, quindi il contenuto dei tag &lt;li&gt;.<\/p>\n<p>Come detto ad inizio articolo, il metodo .text() pu\u00f2 essere utilizzato anche per scrivere testo all&#8217;interno di un blocco HTML. La sintassi \u00e8 semplice e del tutto simile a quella del metodo .html():<\/p>\n<p>$(&#8216;#id_blocco&#8217;).text(&#8216;Testo da inserire&#8217;);<\/p>\n<p>Il metodo accetta come parametro una stringa, la quale verr\u00e0 scritta all&#8217;interno dell&#8217;elemento identificato tramite ID.<br \/>\nUna caratteristica importante da tenere in considerazione \u00e8 che l&#8217;istruzione precedente, se richiamata su un elemento contenente a sua volta altri elementi HTML, <em>sovrascrive tutto il contenuto<\/em>, realizzando quindi un semplice nodo di testo.<br \/>\nE&#8217; interessante notare, inoltre, cosa accade quando la stringa in input al metodo contiene codice HTML, in questo caso il codice non verr\u00e0 interpretato, bens\u00ec verr\u00e0 convertito in una semplice stringa di testo.<\/p>\n<p>Infine vediamo tre funzioni parametrizzate che utilizzano il metodo .text():<\/p>\n<p>\/\/ Funzione che restituisce il testo contenuto in un elemento<br \/>\nfunction GetText(id){<br \/>\n    var testo = $(&#8216;#&#8217;+id).text();<br \/>\n    alert(&#8216;Il testo contenuto \u00e8:\\n\\n&#8217;+testo);<br \/>\n}<br \/>\n\/\/ Funzione che scrive un testo in un elemento<br \/>\nfunction SetText(id,testo){<br \/>\n    $(&#8216;#&#8217;+id).text(testo);<br \/>\n}<br \/>\n\/\/ Funzione che aggiunge testo ad un elemento<br \/>\nfunction AddText(id,new_testo){<br \/>\n    var testo = $(&#8216;#&#8217;+id).text();<br \/>\n    $(&#8216;#&#8217;+id).text(testo+new_testo);<br \/>\n}<\/p>\n<p>Nonostante il metodo .text() possa risultare meno utile del metodo .html(), offre molteplici spunti progettuali.<br \/>\nLe funzioni viste sono state raccolte in una pagina web d\u2019esempio.<\/p>\n<p>Cliccando qui \u00e8 possibile vedere in azione il codice.<\/p>\n<p>Cliccando qui \u00e8 possibile scaricare il codice.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[20],"tags":[273,272,271,274],"_links":{"self":[{"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/posts\/1199"}],"collection":[{"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/comments?post=1199"}],"version-history":[{"count":0,"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/posts\/1199\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/media?parent=1199"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/categories?post=1199"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/tags?post=1199"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}