php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 30.10.2010, 08:39  
Neuer Benutzer
 
Registriert seit: 08.08.2010
Beiträge: 4
PHP-Kenntnisse:
Anfänger
konze befindet sich auf einem aufstrebenden Ast
Standard dynamische Variablennamen in JS

Hallo zusammen,

ich habe folgendes Problem, ich habe eine Tabelle mit <input>´s die von PHP aus erstellt wird. Jeder <input> hat den selben Namen plus eine Suffixzahl, die nicht Linear ansteigt und auch nicht sortiert ist, jedoch nur einmal vorkommt.

PHP-Code:
<input type="text" id="zwischensumme3" onChange="get_sum()">
<
input type="text" id="zwischensumme26" onChange="get_sum()">
<
input type="text" id="zwischensumme15" onChange="get_sum()">
<
input type="text" id="zwischensumme8" onChange="get_sum()">
<
input type="text" id="zwischensumme23" onChange="get_sum()"
Die Suffixzahlen sind in einem PHP Array gespeichert und werden auch an JS als Array weiter gereicht.
Das eigentlich Problem ist nun wenn die funktion get_sum() aufgerufen wird, durchläuft diese den JS Array mit den Suffixzahlen, und genau da komme ich nun ins stocken. wie kann ich in JS Variablen zur Laufzeit erzeugen.

PHP-Code:
<script type="text/javascript">
function get_sum() {
    suffix_nr_array = new Array(<?=$suffix_nr_str?>); // "'3','26','15','8','23'"
    main_sum = 0;

    for(i = 0;i < suffix_nr_array.length; i++) {
        temp = document.getElementById("zwischensumme ??? ").value; // hier muss die Suffixzahl angehängt werden.
        temp = temp.replace(",",".");
        main_sum += parseDouble(temp);
    }

    alert(main_sum);
 }
</script>
Danke und viele Grüße,

Konze
konze ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 30.10.2010, 10:22  
Moderator
 
Benutzerbild von agrajag
 
Registriert seit: 02.10.2006
Beiträge: 3.820
PHP-Kenntnisse:
Fortgeschritten
agrajag wird schon bald berühmt werdenagrajag wird schon bald berühmt werden
Standard

getElementById erwartet einen einfachen String als Parameter. Du kannst also einfach "zwischensumme" + suffix_nr_array[i] angeben.

Schöner fände ich aber eine Lösung, bei der du den Input-Feldern die aufsummiert werden sollen einfach eine spezielle Klasse gibst und es über die abfragst:
Code:
<input type="text" class="sum" id="bla1" /><input type="text" class="sum" id="bla2" />
// js mit Prototype.js oder Mootools ...
var sum = 0;
$$('.sum').each(function(el) {
  sum += parseInt(el.value);
});
__________________
Today you...Tomorrow me.
agrajag ist offline   Mit Zitat antworten
Alt 30.10.2010, 12:34  
Moderator
 
Benutzerbild von Chriz
 
Registriert seit: 11.05.2008
Beiträge: 6.266
Chriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer Anblick
Standard

Hallo,

ich rat dir davon ab Informationen doppelt zu führen, also mal als JavaScript-Array und dann noch im DOM. Ich hatte das auch eine zeitlang gemacht, das Skript ist angewachsen, du fügst vielleicht über AJAX dynamisch Elemente hinzu, entfernst welche, vertauscht sie etc. Und du musst immer zwei Listen aktualisieren, JS und das DOM. Nimm das DOM als einzige Referenz und mach es wie von agrajag empfohlen, das reicht auch vollkommen.
__________________
"Nuschel ich?" - "Was?"
Chriz ist offline   Mit Zitat antworten
Alt 30.10.2010, 13:58  
Neuer Benutzer
 
Registriert seit: 08.08.2010
Beiträge: 4
PHP-Kenntnisse:
Anfänger
konze befindet sich auf einem aufstrebenden Ast
Standard

Dankeschön hat super geklappt.
konze ist offline   Mit Zitat antworten
Alt 31.10.2010, 01:34  
Erfahrener Benutzer
 
Benutzerbild von mermshaus
 
Registriert seit: 14.06.2009
Beiträge: 1.725
PHP-Kenntnisse:
Fortgeschritten
mermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz sein
Standard

Zitat:
Zitat von Chriz
ich rat dir davon ab Informationen doppelt zu führen, also mal als JavaScript-Array und dann noch im DOM. Ich hatte das auch eine zeitlang gemacht, das Skript ist angewachsen, du fügst vielleicht über AJAX dynamisch Elemente hinzu, entfernst welche, vertauscht sie etc. Und du musst immer zwei Listen aktualisieren, JS und das DOM. Nimm das DOM als einzige Referenz und mach es wie von agrajag empfohlen, das reicht auch vollkommen.
Man könnte eine vom DOM unabhängige JavaScript-Datenstruktur als Model auffassen und das DOM selbst als View. Die View belauscht das Model und aktualisiert sich nur dann, wenn im Model Änderungen auftreten. Ajax-Requests und allgemein Veränderungen werden dann ausschließlich am Model vorgenommen und wirken sich nur indirekt auf die View aus.

Weiß nicht, ob das in großem Umfang praktikabel ist, aber es wäre ein von der Definition/Anordnung her eindeutiges Design.
__________________
Blog | Buch | Kaloa
mermshaus ist gerade online   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Dynamische Signatur KazuMikura PHP Tipps 2010 1 12.05.2010 19:11
[Erledigt] Variablennamen dynamisch generieren - jetzt kommts^^ dark alex PHP Tipps 2008 3 08.11.2008 02:10
Variablennamen in Variablennamen??? blu3fish PHP Tipps 2008 4 29.01.2008 22:46
dynamische abfrage malomu Datenbanken 2 22.03.2006 14:20
Mehrstufige Dynamische Navigation mit PHP PHP Tipps 2006 13 07.03.2006 17:49
dynamische Variablen- und Klassennamen DerDesian PHP Tipps 2007 1 30.11.2005 13:11
Dynamische Variablenbenennung Cosmo PHP Tipps 2007 1 22.11.2005 00:44
Dynamische Grafik in PHP PHP Tipps 2005-2 6 26.07.2005 11:47
dynamische Linksammlung PHP Tipps 2005-2 1 22.07.2005 11:56
Dynamische Menüse ohne Javascript ?? PHP Tipps 2005 2 13.04.2005 17:49
Dynamische Menüse ohne Javascript ?? PHP Tipps 2005 1 13.04.2005 14:32
[erledigt] nl2br & dynamische Tabelle Magic PHP Tipps 2004-2 4 03.12.2004 17:53
dynamische Fotogalerie Beitragsarchiv 7 27.08.2004 11:28
suche dynamische "bookmark / favoriten" script... PHP Tipps 2004 1 04.08.2004 22:38
[Erledigt] &amp;amp;quot;dynamische&amp;amp;quot; Variablennamen PHP-Fortgeschrittene 5 05.06.2004 18:34

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
javascript dynamische variablennamen, js dynamische variablennamen, javascript variablennamen dynamisch bilden, dynamische variablennamen javascript, javascript dynamische variablen, js dynamische variable, js dynamische variablen, http://www.php.de/javascript-ajax-und-mehr/73374-dynamische-variablennamen-js.html, js variable dynamisch generieren, variablennamen dynamisch javascript, javascript variable variablen erstellen, javascript variable dynamisch erzeugen, javascript variable dynamisch erstellen, javascript dynamische variable, js dynamisches element, dynamische variablennamen php, js dynamischer variablenname, javascript variablen dynamisch erstellen, variablennamen dynamisch erzeugen javascript, js variablennamen

Alle Zeitangaben in WEZ +2. Es ist jetzt 10:09 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum