regExp und IE

andreosi123

Grünschnabel
hallo, ich habe folgenden quelltext um mir id´s auslesen zu lassen. ich nehme mir den gesamtquelltext ab einem bestimmten div und lasse darin nach inputfeldern suchen. der name der inputfelder ist z.b. "imagegallery123", "imagegallery432" und er gibt mir den zahlenwert zurück. das ganze funktioniert auch richtig gut, nur nicht im internetexplorer. im quelltext des ie habe ich direkt <input name="imagegallery123"... zu stehen. im ie steht <input ...name=imagegallery123... also er hat noch etwas vor dem namen zu stehen und keine hochkomma. auch wenn ich jetzt bei dem regEx das "<input " entferne und die hochkomma, findet er es nicht.

woran kann das liegen?

Code:
	var htmlText = opener.document.getElementsByTagName("div")[2].innerHTML;
	var htmlText = htmlText.toLowerCase();
	var regEx    = /<input name="imagegallery?(.*?)?["']/gi;
	var matches;
	var id       = 0;

	var ids = new Array();

	while (matches = regEx.exec(htmlText)) {
		ids.push(matches[1]);
	}

	for (i = 0; i < ids.length; i++) {
		img = opener.document.getElementById("imagegallery"+ids[i]).value;
	}
 
Hi,

versuch es mal mit folgendem Ausdruck:
Code:
var regEx = /<input.*imagegallery([^\D].*)/gi;

Bei der Auswertung muss dann jedoch das letzte Zeichen wieder entfernt werden:
Code:
ids.push(matches[1].substr(0, matches[1].length-1));

Weiterhin möchte ich dich bitten, in deinen Beiträgen entsprechend unserer Netiquette (Punkt 15) auf Gross- und Kleinschreibung zu achten - besten Dank im voraus.

Ciao
Quaese
 
OK, vielen Dank.

Leider war es damit nicht ganz getan, da der IE noch ein "fixed_bound="true">" dran hatte und die anderen Browser noch den Rest des Eingabefeldes.

Und somit habe ich es jetzt über
Code:
		var newId = ids[i].replace(/ fixed_bound="true">/gi, "");
		var myId  = newId.split('"', 1);
		myId[0]   = parseInt(myId[0]);

umgebogen.

Danke.
 

Neue Beiträge

Zurück