valor texto span obtener con change cambiar javascript jquery menu textnode

javascript - obtener - jQuery get.text() pero no el texto en span



obtener el valor de un label con javascript (2)

Sí, puede seleccionar solo el contenido de texto del elemento, como este:

var text = ''''; $(''a'').contents().each(function(){ if(this.nodeType === 3){ text += this.wholeText; } }); $("#largemenutop").html(text);

Hola chicos, esta es mi parte jQuery que hace mi menú para mis páginas.

function fetchmenus() { $.getJSON(''sys/classes/fetch.php?proccess=1'', function(status) { // get line status $.each(status, function(i, item) { if (item.id == "1") { active = "class=''active''"; lastpageid = item.href; } else { active = "class=''nonactive''"; } $(''<li id="'' + item.href + ''" '' + active + ''><a href="#'' + item.href + ''">'' + item.menuTitle + ''<span class="menuspan" id="'' + item.href + ''"></span></a></li>'').appendTo(''#menuarea ul#mainmenu''); }); }); }

Lo que quiero hacer es obtener el item.menuTitle en el <a pero antes del <span>

Actualmente lo hago de esta manera:

$(''ul#mainmenu li'').live(''click'', function(event) { //alert(this.id); $("li#" + lastpageid).removeClass(); fetchpage(this.id); $("#largemenutop").html($(this).text()); $("li#" + this.id).addClass("active"); lastpageid = this.id; });;

¿Hay una mejor manera de hacer esto?


Buena solución Herman, aunque se puede reducir a algo como esto:

JS

$(''li a'').contents().filter(function() { return this.nodeType == 3; }).text();

HTML

<li><a href="#">Apple<span>hi</span> Juice</a></li>

Volverá Apple Juice

Fiddle: http://jsfiddle.net/49sHa/1/