Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Markera/avmarkera en rad

Postades av 2005-04-14 16:46:55 - Joachim Feldt, i forum javascript/dhtml, Tråden har 9 Kommentarer och lästs av 841 personer

Hej,

Jag har ett litet script som gör att när man klickar på en rad i tabell, markeras den. Eller rättare sagt bakgrundsfärgen byts. Klickar jag på en annan rad blir den istället markerad.

Så långt fungerar det.

Men jag skulle vilja att om man klickar på en redan markerad rad igen skall den avmarkeras.
Kan någon visar hur jag ändrar i detta lilla script för att åstadkomma detta?

Man ska alltså välja något i en lista, men ångrar man sig måste man ju kunna avmarkera så att ingen är vald.

<code>
var originalrow_color, originalitem_color;

function highlightrow(obj)
{
unFormatMenuItem();
objCellToFormat = obj;

if(obj.bgColor!="#B0C4DE")
{
originalrow_color=obj.bgColor;
obj.bgColor="#B0C4DE";
}
else
{
obj.bgColor=originalrow_color;
}
}

function unFormatMenuItem()
{
if (typeof(objCellToFormat) == "object")
{
objCellToFormat.bgColor=originalrow_color;
}
}
</code>

Variabeln "obj" är aktuell rad.

Jag har försökt o försökt, men jag är för dålig på javascript för att se vad som skall ändras...

Tack på förhand!!

/Jocke


Svara

Sv: Markera/avmarkera en rad

Postades av 2005-04-14 17:38:48 - Per Persson

Pröva

function highlightrow(row)
{
    if(!row.oldcolor)
        row.oldcolor = '#b0c4de';

    var oc = row.oldcolor;
    row.oldcolor = row.style.backgroundColor;
    row.style.backgroundColor = oc;
}


Svara

Sv:Markera/avmarkera en rad

Postades av 2005-04-14 20:46:53 - Joachim Feldt

Hej o tack för svaret!

Det funkar inte dock.

När jag skriver så här:
<code>
<script language="javascript">
function highlightrow(row)
{
if(!row.oldcolor)
row.oldcolor = '#b0c4de';

var oc = row.oldcolor;
row.oldcolor = row.style.backgroundColor;
row.style.backgroundColor = oc;
}

</script>
</head>
<body>

<table width="300" cellpadding="3" cellspacing="0">
<tr onClick="highlightrow(this);">
<td width="150">Rad 1</td>
<td width="150">Rad 1</td>
</tr>
<tr onClick="highlightrow(this);">
<td width="150">Rad 2</td>
<td width="150">Rad 2</td>
</tr>
<tr onClick="highlightrow(this);">
<td width="150">Rad 3</td>
<td width="150">Rad 3</td>
</tr>
</table>

</body>

</code>

Då blir raden färgad när jag klickar på den. När jag klickar på nästa blir den också färgad, alltså båda är då färgade. Alltså varje rad jag klickar på blir färgad.

Eller menar du att din kod skall in någonstans i min? Jag är som sagt för dålig för förstå hur, så i så fall får du gärna visa hur den ska in.


/Jocke


Svara

Sv: Markera/avmarkera en rad

Postades av 2005-04-14 22:55:46 - Per Persson

Har alla rader samma färg när de inte är markerade?

Pröva

<script type="text/javascript">
function unhighlightallrows()
{
    var row;
    for(var i=1; row=document.getElementById('row[' + i + ']'); i++)
        row.style.backgroundColor = '#ffffff';  // Normal bakgrundsfärg
}

function highlightrow(row)
{
    unhighlightallrows();
    row.style.backgroundColor = '#b0c4de';  // Markerad bakgrundsfärg
}
</script>
<table width="300" cellpadding="3" cellspacing="0">
	<tr onclick="highlightrow(this);" id="row[1]">
		<td width="150">Rad 1</td>
		<td width="150">Rad 1</td>
	</tr>
	<tr onclick="highlightrow(this);" id="row[2]">
		<td width="150">Rad 2</td>
		<td width="150">Rad 2</td>
	</tr>
	<tr onclick="highlightrow(this);" id="row[3]">
		<td width="150">Rad 3</td>
		<td width="150">Rad 3</td>
	</tr>
</table>


Svara

Sv:Markera/avmarkera en rad

Postades av 2005-04-15 07:19:30 - Joachim Feldt

Japp.

Nu blir resultatet som jag hade det från början, alltså en rad i taget blir markerad.
Det jag vill göra nu är att när jag klickar på en redan markerad rad, skall den avmarkeras. Så att ingen rad alls är markerad alltså.

Tack så länge!

/Jocke


Svara

Sv: Markera/avmarkera en rad

Postades av 2005-04-15 09:57:56 - Per Persson

Nu...

<script type="text/javascript">
var highlightedrow = null;

function unhighlightallrows()
{
    var row;
    for(var i=1; row=document.getElementById('row[' + i + ']'); i++)
        row.style.backgroundColor = '#ffffff';  // Normal bakgrundsfärg
}

function highlightrow(row)
{
    unhighlightallrows();
    if(highlightedrow && highlightedrow==row)
        highlightedrow = null;
    else {
        row.style.backgroundColor = '#b0c4de';  // Markerad bakgrundsfärg
        highlightedrow = row;
    }
}
</script>
<table width="300" cellpadding="3" cellspacing="0">
	<tr onclick="highlightrow(this);" id="row[1]">
		<td width="150">Rad 1</td>
		<td width="150">Rad 1</td>
	</tr>
	<tr onclick="highlightrow(this);" id="row[2]">
		<td width="150">Rad 2</td>
		<td width="150">Rad 2</td>
	</tr>
	<tr onclick="highlightrow(this);" id="row[3]">
		<td width="150">Rad 3</td>
		<td width="150">Rad 3</td>
	</tr>
</table>


Svara

Sv:Markera/avmarkera en rad

Postades av 2005-04-15 10:06:46 - Joachim Feldt

Lysande!!

STORT tack för hjälpen!

/Jocke


Svara

Sv: Markera/avmarkera en rad

Postades av 2005-04-15 11:25:08 - Joachim Feldt

Jag öppnar tråden igen....

I loopen som går igenom raderna:
<code>
for(var i=1; row=document.getElementById('row[' + i + ']'); i++)
row.style.backgroundColor = '#ffffff';
</code>

Detta är alltså en datagrid i VB.Net, så i code behinden sätter jag id på varje rad till vad posten har för ID i databasen.
Så varje rad får t ex id, "dataGridNamn_3434". Jag vet alltså inte vilket id raden har.

Kan man göra på något annat sätt i "unhighlightallrows();" för att avmarkera den tidagare markerade raden. "Din" loop förutsätter ju att id:a alltid börjar på 1?

Är du med på hur jag menar?

/Jocke


Svara

Sv:Markera/avmarkera en rad

Postades av 2005-04-15 12:52:23 - Per Persson

Så här:

function unhighlightallrows()
{
    var table = document.getElementById('the_table');
    for(var i=0; i<table.rows.length; i++)
        table.rows[i].style.backgroundColor = '#ffffff';  // Normal bakgrundsfärg
}

och på table-elementet sätter du id="the_table".


Svara

Sv: Markera/avmarkera en rad

Postades av 2005-04-15 13:29:48 - Joachim Feldt

NU är är jag nöjd:)

Bugar o backar för din tid du lagt ner!!

/Jocke


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 722
27 958
271 751
5 633
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies