Sunucu tarafında komut dosyası oluşturmak ve içindeki değeri gömebilirsiniz:
StringBuilder sb = new StringBuilder();
sb.Append("<script type=\"text/javascript\"");
sb.Append("var someFunc = function(){");
sb.AppendFormat("alert('{0}');", importantServerSideValue);
sb.Append("};");
sb.Append("</script>");
Page.ClientScript.RegisterClientScriptBlock("genScript", sb.ToString());
Ya sayfasında bir gizli form öğesinin değerini yerleştirin ve istemci tarafında JavaScript de erişebilirsiniz.
<script language="javascript" type="text/javascript">
var stringValue = '<%=GetStringValue();%>';
// For example:
alert(stringValue);
</sctipt>
: Eğer bir javascript işlevine değerini geçmesi gerektiği anlamına olursa
<!-- In the Markup -->
<asp:HtmlInputHidden id="hiddenField" runat="server" />
// And in the code-behind
hiddenField.Value = importantServerSideValue;
StringBuilder sayfaya enjekte edilecek komut dosyaları oluşturmak için aaargh, gözlerim! ;-) Gizli giriş alanı çok daha iyi olsa da :) – Rob
@Rob - Hehe. Genelde, komut dosyasını kaydetmenin özel yöntemlerinden herhangi birini kullanması gerekmediği sürece (başlangıç kodunu bir komut dosyası olarak kaydetme gibi) gerekmedikçe, genellikle kodun arka planda kod oluşturması gerekir. –