Javascript GetElementById + PHP?

Trädvy Permalänk
Medlem
Plats
Oskarshamn
Registrerad
Jul 2009

Javascript GetElementById + PHP?

Hejsan,

Jo det är så att jag letar efter ett sätt att kunna skriva ut antalet rows in ett table, så att det hamnar i ett text field genom att använda bara javascript, javascript+php eller bara php.

Så här ser koden ut:

<form name="form1" action="form.php" method="post"><table width="155" border="0" id="table1"> <tr> <td width="60"><input type="text" name="test1" size="10" /></td> <td width="85" rowspan="3" valign="top"><input type="text" name="rows" value="" /></td> </tr> <tr> <td><input type="text" name="test2" size="10" /></td> </tr> <tr> <td><input type="text" name="test3" size="10" /></td> </tr> </table> </form>

Skulle man kunna på något sätt skriva ut resultatet utav document.getElementById('table1'). rows.length i value="" på text fältet rows genom att bara använda javascript?

Eller skulle man kunna definiera document.getElementById('table1'). rows.length som en PHP variabel t.ex. $rows? Sedan bara <?php echo "$rows"; ?> i value=""

Eller om det finns något sätt att räkna table rows med PHP och använda det istället för GetElementById.

Kom med förslag!

Tack på förhand

Trädvy Permalänk
Medlem
Plats
i din garderob
Registrerad
Sep 2007

Om din table genereras från en databas så är PHP det givna valet eftersom man med en enkel COUNT(*)-sats i SQL-anropet kan få ut antalet rader.

I annat fall borde något i stil med document.getElementById('table1').getElementsByTagName('tbody')[0].getElementsByTagName('tr').length fungera.

edit: testa document.getElementById('table1').rows.length istället. Det är antagligen snabbare!

Bilanaloger är som Volvo — varenda svenne kör med dem

Trädvy Permalänk
Medlem
Plats
Oskarshamn
Registrerad
Jul 2009

Tack för ditt svar, Teknocide

Men jag tror jag hittade en annan lösning.

Jag kollade lite extra på internet och läste att man skulle kunna skapa en Javascript variabel och sedan bara använda simpel $_GET i PHP för att få ut denna information.

Jag kanske har fel, men skulle detta fungera?

I sånna fall skulle man väl kunna göra document.getElementById('table1'). rows.length till en Javascript variabel.

Trädvy Permalänk
Medlem
Plats
i din garderob
Registrerad
Sep 2007

Du kan inte ta information ur en javascript-variabel med PHP nej. PHP=server side, JavaScript=client side. Dvs, jobbet som PHP gör sker på servern, medan JavaScript körs av besökarens dator.

Bilanaloger är som Volvo — varenda svenne kör med dem