 |
Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Comunitatea PHP Romania
|
| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
monk
Data înscrierii: 28/Noi/2004
Mesaje: 16
|
| Trimis: Mar Noi 30, 2004 2:01 pm Titlul subiectului: Afisare inregistrari la fel ca la Yahoo mail |
|
|
Salut,
Am urmatorul formular
Cod:
<html>
<head>
<title>teste</title>
</head>
<body>
<script type="text/javascript" language="javascript">
function highlightRow(InputNode) {
var el = InputNode;
while (el.nodeType != 1 || el.nodeName.toLowerCase() != 'tr')
el = el.parentNode;
el.style.backgroundColor = (InputNode.checked) ? '#FFCC00' : '#f0f0f0';
}
</script>
<form method="post" action="index.php">
<table cellspacing="0" cellpadding="2" border="1">
<tr bgcolor=#ffffff onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" name="item[]" onclick="highlightRow(this)"></td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#ffffff onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" name="item[]" onclick="highlightRow(this)"></td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#ffffff onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" name="item[]" onclick="highlightRow(this)"></td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#e0e0e0 onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" checked disabled name="item[]"> </td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#ffffff onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" name="item[]" onclick="highlightRow(this)"></td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#e0e0e0 onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" checked disabled name="item[]"> </td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#ffffff onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" name="item[]" onclick="highlightRow(this)"></td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#ffffff onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" name="item[]" onclick="highlightRow(this)"></td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#e0e0e0 onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" checked disabled name="item[]"> </td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
</table>
</form>
</body>
</html>
(puteti sa dati copy/paste intr-un test.html sa vedeti cum merge)
Problema e de javascript
Vreau cand selectez un checkbox sa se coloreze orange cand deselectez sa revina alb (sau gri, nu conteaza se poate modifica codul culorii)
si in acelasi timp tot timpul cand apare mouseover sa se coloreze <tr> blue
Merci pentru ajutor |
|
| Sus |
|
Pirahna
Data înscrierii: 22/Aug/2004
Mesaje: 4404
Locație: la birou
|
| Trimis: Mie Dec 01, 2004 2:54 pm Titlul subiectului: |
|
|
mie asa imi merge bine ... si ai si casutele disabled ...
Cod: <html>
<head>
<title>teste</title>
</head>
<body>
<script type="text/javascript" language="javascript">
function highlightRow(InputNode) {
var el = InputNode;
while (el.nodeType != 1 || el.nodeName.toLowerCase() != 'tr')
el = el.parentNode;
el.style.backgroundColor = (InputNode.checked) ? '#FFCC00' : '#f0f0f0';
}
</script>
<form method="post" action="index.php">
<table cellspacing="0" cellpadding="2" border="1">
<tr bgcolor=#ffffff onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" name="item[]" onclick="highlightRow(this)"></td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#ffffff onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" name="item[]" onclick="highlightRow(this)"></td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#ffffff onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" name="item[]" onclick="highlightRow(this)"></td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#e0e0e0 onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" checked disabled name="item[]"> </td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#ffffff onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" name="item[]" onclick="highlightRow(this)"></td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#e0e0e0 onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" checked disabled name="item[]"> </td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#ffffff onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" name="item[]" onclick="highlightRow(this)"></td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#ffffff onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" name="item[]" onclick="highlightRow(this)"></td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
<tr bgcolor=#ffffff onMouseOver="this.bgColor='#D9ECFF'"
onMouseOut="this.bgColor='#ffffff'">
<td><input type="checkbox" name="item[]" onclick="highlightRow(this)"></td>
<td >TEXT text Text TEXT text Text TEXT text Text </td>
</tr>
</table>
</form>
</body>
</html>
daca nu merge ... incearca sa scoti ' de la this.bgColor='#D9ECFF' ca merge si fara ... |
|
| Sus |
|
monk
Data înscrierii: 28/Noi/2004
Mesaje: 16
|
| Trimis: Joi Dec 02, 2004 12:56 pm Titlul subiectului: |
|
|
merge merge da nu prea bine
onmouseover pe randurile selectate apoi deselectate nu mai merge
am gasit alta functie care initializeaza toate randurile din tabelul 3 (sau altul) cu onmouseover ....
apoi la checkbox pun onclick si merge
dezavantajul e ca trebuie indicat exact al 3 tabel sau al 2-lea tabel
cam aiurea pentru dezvoltarea ulterioara (trebuie verificat tot timpul nr. tabelului)
daca stiti cum se poate utiliza getElementById in acest caz, va rog sa-mi spuneti si mie --- sa pot aplica functiile numai pentru un tabel cu id="tabelino" de ex. :)
javascrip:
Cod:
<script>
function setRowColor(theRow, theColor){
cells = theRow.cells;
for(var i=0;i<cells.length;i++){
if(theColor==""){
cells[i].style.backgroundColor = cells[i].orgColor;
} else {
cells[i].orgColor = cells[i].style.backgroundColor;
cells[i].style.backgroundColor = theColor;
}
}
}
function init(){
//rows = document.getElementById('tabelino').childNodes[0].childNodes;
rows = document.getElementsByTagName("table")[2].rows; // 0-tabelul 1, 1-tabelul 2, ..
thead = document.getElementById('titlu'); // primul <tr>
for(var i= 1;i<rows.length;i++){ // i=1 nu se mai coloreaza capul de tabel
rows[i].onmouseover = function(){ setRowColor(this, "#DEE3Ee")};
rows[i].onmouseout = function(){ setRowColor(this, "")};
}
}
function chtrcolor(InputNode){
var el = InputNode;
while (el.nodeType != 1 || el.nodeName.toLowerCase() != 'tr')
el = el.parentNode;
el.style.backgroundColor = (InputNode.checked) ? '#FFCC00' : '';
}
</script>
se vede in comentariu ce-am vrut sa spun cu getElementById
si HTML:
Cod:
</head>
<body onLoad="init()">
<table border=1 bordercolor=#000000 cellspacing=0 cellpadding=0 bgcolor='#F0F0EC'>
<tr><td colspan=2 bgcolor=#000080><img src=sigla.jpg>Table0 - Lorem ipsum</td></tr>
<tr valign=top><td>Table0 cell
<TABLE class=meniuleft><TR><td>table1 cell</td></tr><tr><td>ipsum</td></tr><tr><td>dolor</td></TR></TABLE>
</td>
<td bgcolor=white><p>Lorem ipsum dolor sit amet adipscit nonummy il dia </p>
<form>
<table id="tabelino" cellspacing=1 cellpadding=1 class=tabelino bgcolor=navy>
<tr ><td class=titlu> [+] </td><td class=titlu>Item </td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td >Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td >Dolor sit amet adipscit nonummy il dia paternum min gustum temptat</td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td >Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td >Dolor sit amet adipscit nonummy il dia paternum min gustum temptat</td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td >Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr class=disable><td align=center><input type=checkbox class=chbmic checked disabled onclick="chtrcolor(this)"></td>
<td >Checkbox disabled checked - Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td >Dolor sit amet adipscit nonummy il dia paternum min gustum temptat</td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td>Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td>Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td>Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td>Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td>Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td>Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr class=disable><td align=center><input type=checkbox class=chbmic disabled onclick="chtrcolor(this)"></td>
<td >Checkbox disabled - Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td>Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td>Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td>Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td>Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td>Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
<tr ><td align=center><input type=checkbox class=chbmic onclick="chtrcolor(this)"></td>
<td>Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr>
</table>
<table border=1><tr><td><input type=submit value=" Go "></td><td>Lorem ipsum dolor sit amet adipscit nonummy il dia </td></tr></table>
</form>
</td>
</tr>
</table>
</body>
</html>
[/code]
pentru un site static e catde cat ok, dar daca vreau sa mai adaug alt tabel trebuie mereu sa schimb nr. tabelului din functia javascript
plus ca daca nu se incarca toata pagina , nu apare evenimentul onload, si nu mai merge init()
Any idea ? :idea: |
|
| Sus |
|
monk
Data înscrierii: 28/Noi/2004
Mesaje: 16
|
| Trimis: Mie Ian 05, 2005 11:05 pm Titlul subiectului: |
|
|
function init(){
rows = document.getElementById('tabelino').rows;
// rows = document.getElementsByTagName("table")[7].rows; // 0-tabelul 1, 1-tabelul 2, ..//7 ok
for(var i= 1;i<rows.length;i++){ // i=1 nu se mai coloreaza capul de tabel
rows[i].onmouseover = function(){ setRowColor(this, "#CAECC4")}; //#DEE3Ee #d0e0f0 #E6E1D2
rows[i].onmouseout = function(){ setRowColor(this, "")};
}
}
tabelul are id 'tabelino'
functia se apeleaza dupa tabel
merge chiar daca event-ul onload n-a aparut
thread closed |
|
| Sus |
|
PHPRomania Bot
Bot Member
Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google |
| Trimis: Mie Dec 26, 2007 7:01 pm Titlul subiectului: Ad |
|
|
|
|
|
| Sus |
|
| |
|