php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS Probleme mit HTML5, Bootstrap oder jQuery ?

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 20-03-2014, 22:51
Marcus-24-D
 Registrierter Benutzer
Links : Onlinestatus : Marcus-24-D ist offline
Registriert seit: Oct 2007
Beiträge: 173
Marcus-24-D befindet sich auf einem aufstrebenden Ast
Standard replace id´s

Hi, ich bekomme es einfach nicht gebacken die attributen mehrerer id´s
zu ändern. Weder mit JQuery noch mit einfachstem replace.
Nur die ID´s wäre ja nicht das Problem. Aber es geht auch in dem Teil im Funktionsaufruf.

Ich habe z.B folgendes Div.

<div id="paula_12">

<div id="cesar_12"> <span id="richard_12"></span>
onclick="sendPMessage('Marcus','christoph_12','banane_12')"
</div>

</div>

Mein letzter Versuch als Beispiel:
Code:
var inhalt = document.getElementById(newdivContPriv);
console.log(inhalt);
var temp = inhalt;


temp.replace("12","21");
inhalt = temp;
console.log("##########################");
console.log(inhalt);
Ich war der Überzeugung das ich in diesem Fall das ganze als Text
behandeln kann und so einfach die id´s austauschen könnte.
Dem ist anscheinend nicht so.
Aber auch mein bestes googeln kommt zu keinem brauchbaren Ergebnis.

Geändert von Marcus-24-D (20-03-2014 um 23:12 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 20-03-2014, 23:15
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.578
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Ich hab kein Wort verstanden. Was soll das werden, wenns fertig ist?
Mit Zitat antworten
  #3 (permalink)  
Alt 20-03-2014, 23:27
Marcus-24-D
 Registrierter Benutzer
Links : Onlinestatus : Marcus-24-D ist offline
Registriert seit: Oct 2007
Beiträge: 173
Marcus-24-D befindet sich auf einem aufstrebenden Ast
Standard

ok sry. war ich wohl zu doof um mich richtig auszudrücken.

ich will diesen teil: _12

mit diesem austauschen: _21
Mit Zitat antworten
  #4 (permalink)  
Alt 20-03-2014, 23:46
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.578
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Warum? IDs sind dazu da einen Eintrag eindeutig zu identifizieren. IDs sind allein vom logischen Verständnis her unveränderbar. Es ist sehr, sehr ungewöhnlich, wenn jemand auf die Idee kommt IDs zu ersetzen. Meistens steckt ein fehlerhaftes Konzept dahinter.

Von daher: Warum willst du das machen? Was willst du damit erreichen?
Mit Zitat antworten
  #5 (permalink)  
Alt 20-03-2014, 23:58
Marcus-24-D
 Registrierter Benutzer
Links : Onlinestatus : Marcus-24-D ist offline
Registriert seit: Oct 2007
Beiträge: 173
Marcus-24-D befindet sich auf einem aufstrebenden Ast
Standard

Nun ja das stimmt und geb dir da vollkommen recht.
Ich habe vor einiger Zeit mal nen Chatscript gekauft bei welchem das Konzept für den Privatchat leider nicht so schön aufgebaut wurde.
Hier wurde dann etwas gefuscht.
Da ich mir eigentlich nicht den riesen aufwand machen wollte und
den ganzen Privatchatteil neu zu schreiben wollte ich die ID´s tauschen.
Das Problem welches sich ergibt ist folgendes:

Sender / Empfänger.
Je nachdem welcher zuerst das Privatchat-Fenster öffnet erhält folgende id.
User 1 öffnet das Fenster und die divs tragen die id 1_2.
Beim Empfänger geht es auch als 1_2 ein.
Für denn Fall aber das beide einen Privatchat starten bekommt jeder 2 Privatfenster. Jedes mit den ID´s 1_2 und 2_1.

Jetzt haben die es sich einfach gemacht und prüfen ob das senderDiv
vorhanden ist. Wenn ja, wird es unterdrückt, welches zur folge hat,
das wenn beide ein Fenster offen haben kein Privatchat stattfinden kann
weil sie sich gegenseitig ausblocken.

Und das hier ist das super Script indem das ganze stattfindet. (Originalversion)

Code:
/*
* create private chat div
*
*/

var privateChat = 0;




function createPChatDiv(divPName,divToName,dPID,duID)
{
	if(privateChat == 1)
	{
		showInfoBox("system","200","300","200","",lang30);
		return false;
	}

	// to user
	if(divToName!=userName)
	{
		var uUser = divToName;
	}
	else
	{
		var uUser = divPName;
	}

	// window title
	var pTitle = uUser;

	// div name
	divPName = duID+"_"+dPID;
	
	// prevent duplicate private chat windows 
	
	if(document.getElementById(dPID+"_"+duID)	)
	{
		document.getElementById(dPID+"_"+duID).style.visibility = 'none';
		document.getElementById("pcontent_"+dPID+"_"+duID).style.visibility = 'none';
		document.getElementById("pmenuBar_"+dPID+"_"+duID).style.visibility = 'none';
		document.getElementById("psendbox_"+dPID+"_"+duID).style.visibility = 'none';
		document.getElementById("pmenuWin_"+dPID+"_"+duID).style.visibility = 'none';	
		
		return false;
	}
	


	// if div exists
	if(!document.getElementById(divPName))
	{
		// create div
		var ni = document.getElementById("pWin");

		var newdiv = document.createElement('div');
		newdiv.setAttribute("id",divPName);

		newdiv.className = "pChatWin";

		// title
		newdiv.innerHTML = "<div doFocus(\""+divPName+"\")' id='ptitle_"+divPName+"' class='ptitle' style='cursor:move;' onclick=doFocus(\""+divPName+"\")> <span style='float:left;'>&nbsp;<img style='vertical-align:middle;' src='avatars/online.gif'>&nbsp;"+decodeURI(pTitle)+"</span> <span style='float:right;'><span style='cursor:pointer;' onclick='minPwin(\""+divPName+"\",\""+divPName+"\")'><img src='images/min.gif'></span>&nbsp;<span style='cursor:pointer;' onclick='closePWin(\""+divPName+"\");privateChatCount();'><img src='images/close.gif'></span>&nbsp;</div>";

		// content
		newdiv.innerHTML += "<div id='pcontent_"+divPName+"' class='pcontent'></div>";

		// menu
		newdiv.innerHTML += "<div id='pmenuBar_"+divPName+"' class='pmenuBar'></div>";

		// sendbox
		newdiv.innerHTML += '<div id=\'psendbox_'+divPName+'\' class=\'psendbox\'><input type=\'text\' id=\'poptionsBar_'+divPName+'\' class="poptionsBar" onKeyPress="return submitenter(this,event,\'poptionsBar_'+divPName+'\',\'pcontent_'+divPName+'\',\''+uUser+'\');" onfocus="changeMessBoxStyle(\'poptionsBar_'+divPName+'\');"></textarea><input id="poptionsSend" class="poptionsSend" type="button" value="'+lang31+'" onclick="sendPMessage(\''+uUser+'\',\'poptionsBar_'+divPName+'\',\'pcontent_'+divPName+'\')"></div>';

		// menu win
		newdiv.innerHTML += "<div id='pmenuWin_"+divPName+"'></div>";

		ni.appendChild(newdiv);

		// add menu
		optionsMenu('pmenuBar_'+divPName, 'poptionsBar_'+divPName, 'pcontent_'+divPName, 'pmenuWin_'+divPName);

		// focus window
		doFocus(divPName);
		
		// drag window
		$( "#"+divPName ).draggable({
			
			handle:"#ptitle_"+divPName,
			containment: "#mainContainer", scroll: false
			
			
			});
			
		//start effect
		$("#"+divPName).effect( "bounce", 
          {times:3}, 300 );	


		


		// resize window
		$( "#"+divPName ).resizable({
			minHeight: 300,
			minWidth: 444,
			//helper: "ui-resizable-helper",
			//animate: true,
			containment: "#mainContainer"
		});			
		
		//autoadd for resize
		$( "#"+divPName ).mouseover(function( event ) {
		var currentId = $(this).attr('id');
		resPriFun(currentId);});
	

	}


}
Meine Variante würde so funktionieren wenn ich die id´s getauscht bekäme.
Weil mit absenden des textes wird diese id verwendet die auch so
in die DB eingetragen wird:

poptionsBar_'+divPName+ // poptionsBar_1_2


Mein Teil. etwas verwüstet durch das ganze hin und her geteste:

Code:
/*
* create private chat div
*
*/

var privateChat = 0;

function createPChatDiv(divPName,divToName,dPID,duID)
{
	if(privateChat == 1)
	{
		showInfoBox("system","220","300","200","",lang30);
		return false;
	}

	// to user
	if(divToName!=userName)
	{
		var uUser = divToName;
	}
	else
	{
		var uUser = divPName;
	}

	// window title
	var pTitle = uUser;

	// div name
	divPName = duID+"_"+dPID;
	
	// prevent duplicate private chat windows 
    
	var rdivPName = dPID+"_"+duID;
    	
       //prevent duplicate private window
        

    


	// if div exists
	        if(document.getElementById(rdivPName))
        {
            document.getElementById(rdivPName).style.visibility = 'visible';
            document.getElementById("pcontent_"+rdivPName).style.visibility = 'visible';
            document.getElementById("pmenuBar_"+rdivPName).style.visibility = 'visible';
            document.getElementById("psendbox_"+rdivPName).style.visibility = 'visible';
            document.getElementById("pmenuWin_"+rdivPName).style.visibility = 'visible';	
 
// $("#"+rdivPName + " > id").html("Question"+(numberOfQuestions));

//$(".selector").attr("name",$(".selector").attr("title"));         // transfering all values of title to name
//$(".selector").removeAttr("title"); 

jQuery(rdivPName).each(function(n) {
        this.innerHTML = this.innerHTML.replace(new RegExp("/"+rdivPName+"/g"), divPName);
    });
    
    
 /*
        //rename
        var div_node = document.getElementById(rdivPName).id = divPName;
        var div_node = document.getElementById("pcontent_"+rdivPName).id = "pcontent_"+divPName;
        var div_node = document.getElementById("pmenuBar_"+rdivPName).id = "pmenuBar_"+divPName;
        var div_node = document.getElementById("psendbox_"+rdivPName).id = "psendbox_"+divPName;
        var div_node = document.getElementById("pmenuWin_"+rdivPName).id = "pmenuWin_"+divPName;

        
           // $(rdivPName).attr("id", divPName);
            $("pcontent_"+rdivPName).attr("id", "pcontent_"+divPName);
            $("pmenuBar_"+rdivPName).attr("id", "pmenuBar_"+divPName);
            $("psendbox_"+rdivPName).attr("id", "psendbox_"+divPName);
            $("pmenuWin_"+rdivPName).attr("id", "pmenuWin_"+divPName);
*/            
            console.log("if");
            return false;
            
            
        }    
    else if(!document.getElementById(divPName))
	{
		// create div
		var ni = document.getElementById("pWin");

		var newdiv = document.createElement('div');
		newdiv.setAttribute("id",divPName);
        
		newdiv.className = "pChatWin";

		// title
		newdiv.innerHTML = "<div doFocus(\""+divPName+"\")' id='ptitle_"+divPName+"' class='ptitle' style='cursor:move;' onclick=doFocus(\""+divPName+"\")> <span style='float:left;'>&nbsp;<img style='vertical-align:middle;' src='avatars/online.gif'>&nbsp;"+decodeURI(pTitle)+"</span> <span style='float:right;'><span style='cursor:pointer;' onclick='minPwin(\""+divPName+"\",\""+divPName+"\")'><img src='images/min.gif'></span>&nbsp;<span style='cursor:pointer;' onclick='closePWin(\""+uUser+"\",\""+divPName+"\");privateChatCount();'><img src='images/close.png'></span>&nbsp;</div>";

		// content
		newdiv.innerHTML += "<div id='pcontent_"+divPName+"' class='pcontent'></div>";

		// menu
		newdiv.innerHTML += "<div id='pmenuBar_"+divPName+"' class='pmenuBar'></div>";

		// sendbox
		newdiv.innerHTML += '<div id=\'psendbox_'+divPName+'\' class=\'psendbox\'><input type=\'text\' id=\'poptionsBar_'+divPName+'\' class="poptionsBar" onKeyPress="return submitenter(this,event,\'poptionsBar_'+divPName+'\',\'pcontent_'+divPName+'\',\''+uUser+'\');" onfocus="changeMessBoxStyle(\'poptionsBar_'+divPName+'\');"></textarea><input id="poptionsSend" class="poptionsSend" type="button" value="'+lang31+'" onclick="sendPMessage(\''+uUser+'\',\'poptionsBar_'+divPName+'\',\'pcontent_'+divPName+'\')"></div>';

		// menu win
		newdiv.innerHTML += "<div id='pmenuWin_"+divPName+"'></div>";

		ni.appendChild(newdiv);

		// add menu
		optionsMenu('pmenuBar_'+divPName, 'poptionsBar_'+divPName, 'pcontent_'+divPName, 'pmenuWin_'+divPName);

		// focus window
		doFocus(divPName);
		
		// drag window
		$( "#"+divPName ).draggable({
			
			handle:"#ptitle_"+divPName,
			containment: "#mainContainer", scroll: false
			
			
			});
            
		//start effect
		$("#"+divPName).effect( "bounce", 
          {times:3}, 300 );	


		


		// resize window
		$( "#"+divPName ).resizable({
			minHeight: 300,
			minWidth: 444,
			//helper: "ui-resizable-helper",
			//animate: true,
			containment: "#mainContainer"
		});			
		
		//autoadd for resize
		$( "#"+divPName ).mouseover(function( event ) {
		var currentId = $(this).attr('id');
		resPriFun(currentId);});     
        console.log("elseif");       
            
	}

        else{
        console.log("else");
        }


}

Geändert von Marcus-24-D (21-03-2014 um 00:04 Uhr)
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
auto_increment - REPLACE martinm79 BRAINSTORMING PHP/SQL/HTML/JS/CSS 8 31-10-2006 21:15
replace jhaustein SQL / Datenbanken 7 05-07-2006 15:51
Replace bweichel SQL / Datenbanken 4 07-04-2005 14:50
replace ? stekoe2000 PHP Developer Forum 2 04-08-2004 13:40
replace Honny SQL / Datenbanken 11 14-01-2003 23:48

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 02:40 Uhr.