Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

JavaScript DOM dynamische Inhalte - Unterschiede FF - IE - onkeydown - RPC

Frage Entwicklung JavaScript

Mitglied: Midivirus

Midivirus (Level 2) - Jetzt verbinden

29.08.2011, aktualisiert 10:35 Uhr, 2945 Aufrufe

Guten Morgen zusammen,

ich referenziere auf einen alten Beitrag HTML JavaScript dynamische Elemente hinzufügen - Tabelle - weitere Felder - Formular - Zeilen - Zellen, welches bis dort alles wunder funktioniert.

Jetzt wurden die hinzugefügten Zeilen noch mit onkeydown ausgestattet.
Der FF interpretiert dies auch korrekt.

Hier mal eine fertige Ansicht, was der Code später auswirft:
1d7f4168f5e5957625681ab5072f8994 - Klicke auf das Bild, um es zu vergrößern

Je nach Änderungstyp wird später beim Auswahlmenü mehrere Felder mit Werten gefüllt.
Beispiel:
Soll die Bezeichnung geändert werden, wird 'Artikelbezeichnung' auch nach 'alt' kopiert.
Bei Preis bsp. gleich der aktuelle wert nach 'alt'.
(etc.)

Der Internet Explorer macht dies auch soweit mit, bis die Zeile 3 bzw. 4 erreicht wird.
Dann wird zwar noch das Auswahlfenster geöfnet und die Werte werden geändert, aber ein übernehmen mittels klick ist dann nicht mehr möglich.

Dieser Codeschnipsel steht im Body vor TABLE:
01.
<script> 
02.
$(document).ready(function(){  
03.
	counting = 1; 
04.
	$('.mehr').click(function(){ 
05.
		$("tr:last").before( 
06.
			'<TR>' + 
07.
			'<TD><SELECT name=\"lief[]\" id=\"feldlieferant'+counting+'\"><OPTION value=\"Kategorie">Kategorie</SELECT></TD>' + 
08.
			'<TD><SELECT name=typ[] id=\"aufart'+counting+'\"><OPTION value=1>Preis<OPTION value=2>Menge<OPTION value=3>Kopien - Kanbans<OPTION value=4>Lager<OPTION value=5>Bezeichnung</SELECT></TD>' + 
09.
			'<TD><INPUT type=text size=15 name=\"kdartnr[]\" id=\"arteingabe'+counting+'\" onkeyup=\"lookup(this.value,\'xxx\',\'\',\'arteingabe'+counting+'\',\'artbez'+counting+'\');\" onblur=\"fill(thisValue);\"  autocomplete=\"off\"></TD>' + 
10.
			'<TD><INPUT type=text name=kdartbez[] id=\"artbez'+counting+'\" readonly=\"true\"></TD>' + 
11.
			'<TD><INPUT type=text name=alt[] id=\"alt'+counting+'\"></TD>' + 
12.
			'<TD><INPUT type=text name=neu[] id=\"neu'+counting+'\"></TD>' + 
13.
			'<TD><INPUT type=text name=notiz[] id=\"notiz'+counting+'\"></TD>' + 
14.
			'</TR>' 
15.
		); 
16.
		document.getElementById("hinweis").style.display = "none"
17.
		counting+=1; 
18.
	}) 
19.
 
20.
 
21.
});  
22.
</script>
Zum Erstellen des Auswahlfensters:
01.
function lookup(inputString,kunde,lieferant,inputid,inputbez) { 
02.
	if(inputString.length == 0) { 
03.
		$('#suggestions').hide(); 
04.
	} else
05.
		var temp = inputid.replace("arteingabe", "feldlieferant"); 
06.
		if(lieferant.length == 0) 
07.
			lieferant = document.getElementById(temp).value; 
08.
		$.post("rpc.php?kunde="+kunde+"&lieferant="+lieferant+"&feldart="+inputid+"&feldbez="+inputbez+"&suche="+inputString+"", {queryString: ""+inputString+""}, function(data){ 
09.
			if(data.length >0) { 
10.
				$('#suggestions').show(); 
11.
				$('#autoSuggestionsList').html(data); 
12.
13.
		}); 
14.
15.
} // lookup
Zum Übernehmen der Werte in die Felder übernimmt dies:
01.
function fill(thisValue,thisBez,inputid,inputbez,inputpreis) { 
02.
	$('#'+inputid).val(thisValue); 
03.
	$('#'+inputbez).val(thisBez); 
04.
	var zeile = inputid.replace("arteingabe", "aufart"); 
05.
	document.getElementById(inputid.replace("arteingabe", "notiz")).value = ''; 
06.
	document.getElementById(inputid.replace("arteingabe", "alt")).value = ''; 
07.
	if(document.getElementById(zeile).value == 1){ 
08.
		document.getElementById(inputid.replace("arteingabe", "alt")).value = inputpreis; 
09.
		document.getElementById(inputid.replace("arteingabe", "neu")).focus(); 
10.
11.
	if(document.getElementById(zeile).value == 2 || document.getElementById(zeile).value == 3){ 
12.
		document.getElementById(inputid.replace("arteingabe", "notiz")).value = 'HIER weiteres definieren!'; 
13.
		document.getElementById(inputid.replace("arteingabe", "notiz")).select(); 
14.
15.
	if(document.getElementById(zeile).value == 5){ 
16.
		document.getElementById(inputid.replace("arteingabe", "alt")).value = thisBez; 
17.
		document.getElementById(inputid.replace("arteingabe", "neu")).focus(); 
18.
19.
	setTimeout("$('#suggestions').hide();", 0); 
20.
	alert(zeile); 
21.
	return true; 
22.
}
Die Fehlerkonsole zeigt mir zwar ein paar fehlerhafte Zeilen, allerdings in Bereichen, wo ich nichts vermute:
Details zum Fehler auf der Webseite
Benutzer-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.2) 
Zeitstempel: Mon, 29 Aug 2011 08:31:34 UTC 
 
Meldung: Nicht abgeschlossene Zeichenfolgenkonstante 
Zeile: 1 
Zeichen: 34 
Code: 0 
URI: http:// 
 
Meldung: "thisValue" ist undefiniert 
Zeile: 1 
Zeichen: 1 
Code: 0 
URI: http://
Gibt es eine etwaige Erklärung, weshalb meistens bei der dritten Zeile dann die fill() einfach nichts mehr macht?
Ähnliche Inhalte
E-Mail
Problem FF 55.0.3 und OWA Exchange 2010 (4)

Frage von keine-ahnung zum Thema E-Mail ...

JavaScript
gelöst JavaScript hochladen (12)

Frage von Patrick-IT zum Thema JavaScript ...

Windows Server
RPC Server ändern (2)

Frage von DerNeueITler zum Thema Windows Server ...

Neue Wissensbeiträge
Viren und Trojaner

Link: Neues Botnetz über IoT-Geräte

Information von certifiedit.net zum Thema Viren und Trojaner ...

Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
Externe IP von innen erreichbar machen (15)

Frage von Windows10Gegner zum Thema Router & Routing ...

Windows Installation
Windows 10 neu installieren (12)

Frage von imebro zum Thema Windows Installation ...

Windows Server
Frage zu Server Rack (11)

Frage von rainergugus zum Thema Windows Server ...