Ich weiß, dass dies schon einmal gefragt wurde, aber ich habe eine andere Möglichkeit gefunden, Verweise auf Steuerelemente in externen JS-Dateien zu bekommen, aber ich bin nicht sicher, wie dies in Bezug auf die Gesamtgeschwindigkeit sinken würde.Gibt es eine bessere Möglichkeit, ClientIDs in externe JS-Dateien zu bekommen?
Mein Code ist
public static void GenerateClientIDs(Page page, params WebControl[] controls) {
StringBuilder script = new StringBuilder();
script.AppendLine("<script type=\"text/javascript\">");
foreach (WebControl c in controls) {
script.AppendLine(String.Format("var {0} = '#{1}';", c.ID, c.ClientID));
}
script.AppendLine("</script>");
if (!page.ClientScript.IsClientScriptBlockRegistered("Vars")) {
page.ClientScript.RegisterClientScriptBlock(page.GetType(), "Vars", script.ToString());
}
}
Das war ich die ID der aspx Seite in meinen JS-Dateien verweisen kann.
Kann jemand irgendwelche Nachteile sehen, um Dinge auf diese Weise zu tun? Ich habe erst begonnen, externe JS-Dateien zu verwenden. Bevor alles in das UserControl geschrieben wurde.
Das ist wirklich meiner Meinung nach sieht – ichiban
Achten Sie darauf, die Tags der Script-Element nicht in Ihrem .js-Datei - das sind HTML, kein Javascript. – Anonymous
ja, der generierte Code geht in die HTML-Ausgabe –