---
title: "Lägga till onclick"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/113150-lägga-till-onclick"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "Web-Tor"
published: "2004-10-08T08:43:02.000Z"
updated: "2004-10-08T15:58:00.000Z"
replies: 8
views: 378
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/javascript/113150-lägga-till-onclick"
---

# Lägga till onclick

## #1 — Web-Tor, 2004-10-08T08:43Z

Undrar hur man lägger till ett onclick-event på en radio:

```
inp = document.createElement('input');
inp.setAttribute('type', "radio");
inp.setAttribute('name', "causal");
inp.setAttribute('className', "noborder");

inp.setAttribute('onclick', "alert('hej');"); [red]/* « ??? */[/red]

cell.appendChild(inp);
```

Någon som vet?

Permalänk: https://www.webforum.nu/p/113150

## #2 — Palle, 2004-10-08T09:03Z

Hmm.. testa att sätta *attachEvent()* istället, ex.:

```
[red]inp.attachEvent("onclick", "alert('hej');");[/red]
```

Permalänk: https://www.webforum.nu/p/1456861

## #3 — Web-Tor, 2004-10-08T09:07Z

Jag var inne och nosade på attachEvent men fick det aldrig att funka. Läste lite till nu och upptäckte hur jag skulle göra. Så här blev det:

```
inp.attachEvent('onclick', e);

function e(){
	alert('hej');
}
```

Permalänk: https://www.webforum.nu/p/1456865

## #4 — Web-Tor, 2004-10-08T09:09Z

Jag har dock upptäckt ett problem till. Radio-rutan markeras inte när man klickar på den. Den blir grå när man trycker ner men sedan blir där inte någon svart prick när man släpper musknappen.
Måste man ange något mer när man skapar en radio?

Permalänk: https://www.webforum.nu/p/1456867

## #5 — Web-Tor, 2004-10-08T09:29Z

Testa den här koden:

```
<script>
function fnAdd()
{
	var tbl = document.getElementById('tblAssessment');
	var inp = document.createElement("input");
	inp.setAttribute('type', "radio");
	inp.setAttribute('name', "namn");

	tbl.rows[0].cells[0].insertAdjacentElement("afterBegin",inp);
}
</script>

<body>

<table border="1" id="tblAssessment">
	<tr>
		<td>1</td>
	</tr>
</table>

<input type="button" value="Add Item" onclick="fnAdd()">

</body>
```

Varför går det inte att markera någon av radio-rutorna?

Permalänk: https://www.webforum.nu/p/1456877

## #6 — Palle, 2004-10-08T09:34Z

Hmm.. tydligen kan man inte sätta namn dynamiskt så i DOM´en.
Testa istället: 

```
[red]<script>
function fnAdd()
{
	var tbl = document.getElementById('tblAssessment');
	[b]var inp = document.createElement("<input name=namn>");[/b]
	inp.setAttribute('type', "radio");
	tbl.rows[0].cells[0].insertAdjacentElement("afterBegin",inp);
}
</script>

<body>

<table border="1" id="tblAssessment">
	<tr>
		<td>1</td>
	</tr>
</table>

<input type="button" value="Add Item" onclick="fnAdd()">

</body>[/red]
```

Permalänk: https://www.webforum.nu/p/1456880

## #7 — Web-Tor, 2004-10-08T11:30Z

Du har rätt!
Hittade detta på MSDN:

> The NAME attribute cannot be set at run time on elements dynamically created with the createElement method. To create an element with a name attribute, include the attribute and value when using the createElement method.

Tack för hjälpen Palle! :)

Markerar ändå mitt eget inlägg som rätt svar eftersom lösningen på mitt första problem finns där.

Permalänk: https://www.webforum.nu/p/1456946

## #8 — Web-Tor, 2004-10-08T14:23Z

Nu har jag ett litet problem till att lösa. Jag vill ha reda på i vilken tagg \<input\>-taggen ligger.

Hade jag haft en vanlig radio i min HTML-fil hade jag bara skrivit:

```
<input type="radio" onclick="e(this);">
```

Nu har jag ju skapat \<input\>-taggen via ett skript. Hur gör jag då?

```
inp.attachEvent('onclick', e);
function e(){
	alert(XXX.parentElement.tagName);
}
```

Permalänk: https://www.webforum.nu/p/1457032

## #9 — Web-Tor, 2004-10-08T15:58Z

Jag hittade [srcElement](http://msdn.microsoft.com/workshop/author/dhtml/reference/properties/srcelement.asp) och kunde använda detta för att se vilket objekt som triggade onclick. :)

Permalänk: https://www.webforum.nu/p/1457071

---

Tråden på webben: https://www.webforum.nu/amne/javascript/113150-lägga-till-onclick
