Ich habe eine Tabelle, mit 2 Feldern, ist eins "Name" und die HTML-Klasse ist "Name", die andere ist "Email" mit HTML-Klasse: "Mail".Set Mail-Wert nach Name Wert
<table>
<tr>
<td colspan="2">User Email</td>
</tr>
<tr>
<td class="name">Albert Einstein</td>
<td class="mail"></td>
</tr>
</table>
können also sagen, dass ich eine Mail-Liste wie folgt aussehen:
- Namen: Albert Einstein, Post: "[email protected]"
- Namen: Isaac Newton, Mail: "[email protected]"
- Name: Alice Newton, Mail-: "[email protected]"
Was ich will, ist der Wert der Mail-Feld zu setzen, nach dem Namensfeld.
Dieser von @Ganesan San Gemeinsamen Javascript-Code, scheint die Arbeit fast tun:
var emails = ["[email protected]", "[email protected]", "[email protected]"];
var name_elements = document.querySelectorAll("td.name");
var mail_element = document.querySelectorAll("td.mail");
for (i = 0; i < name_elements.length; i++) {
var current_element = name_elements[i];
var name = current_element.textContent;
for (j = 0; j < emails.length; j++) {
if (emails[j].indexOf(name) != -1) {
mail_element[i].textContent = emails[j];
break;
}
}
}
Aber es ist nicht mit Großbuchstaben oder Leerzeichen in Namen nicht funktioniert, so wie können wir diesen Code zu beheben, damit es funktioniert mit Großbuchstaben und Leerzeichen zwischen Vor- und Nachname? auch zu erkennen, welche E-Mail an Personen mit ähnlicher E-Mail gehört, siehe Beispiel:
- Name: Isaac Newton, Mail: "[email protected]"
- Name: Alice Newton, Mail: „anewton @ Unternehmen. com "
Dank @Alexander Higgins und @Tushar Vaghela. Beide Antworten funktionieren großartig.
Was ist das Format der E-Mail? Vollständiger Name ? Inital + voller Name? Was, wenn ich 'Einstein' betrete? – Weedoze
@Weedoze siehe Code: var emails = ["[email protected]", "[email protected]", "[email protected]"]; Inital + Nachname, aber es kann variieren, Auch das Namensformat wird immer das gleiche sein, Vorname und Nachname – RocketFuel
'albert @ company.com' ist nicht initial + Nachname ... Wie kann es variieren? – Weedoze