Newsgroup: it.comp.lang.javascript
Titolo: Problema con attributo name

Attributo name che non viene validato
Ciao, ho un problema con un pezzo di codice che non viene validato in quanto
contiene un attributo "name" non valido che non so come cambiare
Nel dettaglio viene visualizzato un elenco di voci che, al click, del mouse
vengono flaggati o non flaggati. Io ho provato a cambiare semplicemente il
name con id ma con questa modifica non è piu possibile togliere il flag di
selezione (che è attivo per default)
Ho provato ad aggiugere ID
id="<%=RadDockableObject1.ClientID%>"
name="<%=RadDockableObject1.ClientID%>"
e a cambiare
 
// da così:	
	var id = menuItem.getAttribute("name");
// a così
        var id = menuItem.getAttribute("id");
Ma l'unica differenza è che in IE funziona correttamente, mentre in FF il
flag non viene disabilitato
Grazie per l'aiuto!
codice:
<% if (RadDockingManager1.DockEnabled) { %>
			<table id="contextMenu"
			style="position:absolute;top:0px;left:0px;display:none;width:120px"
			class="contextMenuTable" cellpadding="4" cellspacing="0">
				<tr name="<%=RadDockableObject1.ClientID%>"
				onclick="MyPortalContextMenu.ItemClicked(this)"
				onmouseover="this.className='itemHover';"
				onmouseout="this.className=''">
					<td><img src="Images/checkMark.gif" alt="Check"/></td>
					<td>My Portal</td>
				</tr>
				<tr name="<%=RadDockableObject2.ClientID%>"
				onclick="MyPortalContextMenu.ItemClicked(this)"
				onmouseover="this.className='itemHover'" onmouseout="this.className=''">
					<td><img src="Images/checkMark.gif" alt="Check"/></td>
					<td>Horoscope</td>
				</tr>
				<tr name="<%=Raddockableobject6.ClientID%>"
				onclick="MyPortalContextMenu.ItemClicked(this)"
				onmouseover="this.className='itemHover'" onmouseout="this.className=''">
					<td><img src="Images/checkMark.gif" alt="Check"/></td>
					<td>News</td>
				</tr>
				<tr name="<%=Raddockableobject7.ClientID%>"
				onclick="MyPortalContextMenu.ItemClicked(this)"
				onmouseover="this.className='itemHover'" onmouseout="this.className=''">
					<td><img src="Images/checkMark.gif" alt="Check"/></td>
					<td>Subscriptions</td>
				</tr>
			</table>
			<% } %>
var MyPortalContextMenu = {
	contextMenu : null,
 
	Hide : function()
	{
		if (this.contextMenu)
		{
			this.contextMenu.style.display = "none";
		}
	},
	Show : function(e, contextMenuId)
	{
		var x = document.body.scrollLeft + document.documentElement.scrollLeft +
		e.clientX;
		var y = document.body.scrollTop + document.documentElement.scrollTop +
		e.clientY;
 
		if (!this.contextMenu)
		{
			this.contextMenu = document.getElementById(contextMenuId);
		}
 
		var cmTable = this.contextMenu;
 
		var rows = cmTable.rows;
		for (var i = 0; i < rows.length; i++)
		{
			this.SetItemState(rows[i]);
		}
 
		cmTable.style.display = "";
		cmTable.style.top = (y + "px");
		cmTable.style.left = (x + "px");
	},
	SetItemState : function(menuItem)
	{
		var id = menuItem.getAttribute("name");
		var dockableObject = document.getElementById(id);
		if (!dockableObject)
			return;
		var isVisible = (dockableObject.style.display != "none");
		menuItem.cells[0].childNodes[0].style.visibility = isVisible ? "" :
		"hidden";
		menuItem.className = "";
	},
	ItemClicked : function(menuItem)
	{				
		var id = menuItem.getAttribute("name");
		var dockableObject = document.getElementById(id);
		if (!dockableObject)
			return;
 
		dockableObject.Show(!dockableObject.IsVisible());
	}
};

Nessun aiutino a riguardo??? :-((

 Nessun aiutino a riguardo??? :-((
E' un po' difficile che qualcuno abbia voglia di sciropparsi
quell'esagerazione di pagina che hai inviato. Sii ragionevole, su :-)
L'unica cosa che posso dirti è che l'attributo name in un tag <tr> non
può rimanere, devi assolutamente toglierlo. Hai l'id, usa quello e
basta.
-- 
mailto: y = i
----------------------------------------
Vivo nel terrore di non essere frainteso 
(Oscar Wilde)