Mit C# für ASP.NET und MOSS-Entwicklung müssen wir JavaScript oft in unseren C# -Code einbetten. Um dies zu erreichen, scheint es zwei vorherrschende Denkschulen zu sein:Wie betten Sie andere Programmiersprachen in Ihren Code ein?
string blah = "asdf";
StringBuilder someJavaScript = new StringBuilder();
someJavaScript.Append("<script language='JavaScript' >");
someJavaScript.Append("function foo()\n");
someJavaScript.Append("{\n");
someJavaScript.Append(" var bar = '{0}';\n", blah);
someJavaScript.Append("}\n");
someJavaScript.Append("</script>");
Die andere Denkschule ist so etwas wie diese:
string blah = "asdf";
string someJavaScript = @"
<script language='JavaScript' >
function foo()
{
var bar = '" + blah + @"';
}
</script>";
Gibt es einen besseren Weg, als eine dieser beiden Methoden? Ich mag den zweiten persönlich, wie Sie den gesamten Abschnitt von JavaScript (oder anderen Sprachblock, ob SQL oder was Sie haben) sehen, und es hilft auch beim Kopieren des Codes zwischen einem anderen Editor für die jeweilige Sprache.
Edit:
Ich sollte erwähnen, dass das Endziel JavaScript in der endgültigen Webseite formatiert ist.
Ich änderte auch das Beispiel, um Interaktion mit dem generierten Code anzuzeigen.
Ich wollte das auch fragen. während der zweite sauberer aussieht, als nächstes versuchen dynamische Benennung von Steuerelementen ... dann wird es noch hässlicher, da Sie Control.ClientID verwenden müssen –
document.getElementById ("" + String.Format ("{0} _ {1}" , Base.ClientID, "Foobar") + @ "" ") .... –