2012-04-26 10 views
3

いくつかのC#変数を使用してjavascriptファイルを作成することはできますか?このようなもの:javasciprtファイル.jsのc#変数にアクセス

var foo = <%= CODE_VALUE.foo %>; 

また、私はセクションに含まれているusercontrol.ascxでそれらを作成する必要がありますか?

おかげ

+0

、あなたは、これが実際に可能であることを見つけるだろう。 –

+1

@GrahamClarkまあ、そうではありません。とにかく、.jsファイルをASP.NETで処理するようにIISを再構成しない限り、.jsファイルには存在しません。それはひどい考えです。 –

+0

@Shedal、ああ、謝罪、私は "javascriptファイル"のビットが表示されませんでした。気にしないで! –

答えて

9

asp.netでコンパイルされていないため、CODE_VALUE.fooをコードに変換しないため、このコードを.jsファイル内に入れることはできません。

あなたができることは、あなたが使用したこの.jsファイルをロードする直前にこの変数を置き、aspxまたはユーザーコントロールでそれらを設定することです。例えば

<script> 
var foo = <%= CODE_VALUE.foo %>; 
<script> 
<script type="text/javascript" src="fileToUseTheFoo.js"> 
</script> 

あなたは、JavaScriptファイルを読み込むハンドラを作成するカスタム変数を含む、あなたが好きなように完全なJavaScriptコードを作成し、JavaScriptの一つとして、それを送信することができます代替。

相対いくつか:あなたはそれを試した場合How to get asp.net client id at external javascript file

+0

私はこれが好きです!なぜ私はそれをすることを決して考えなかったのですか? –

+0

@SimoN私は、有線とは言えないので削除します:)私は、あなたが若くて、あなたがそれらを発見する時間があるので、これはあまり重要ではないと思うということです。重要なことは、あなたの人生に開かれた心と幸せであることです。 – Aristos

+0

私は若いと言って怒ってくれる人は問題ありません;)私はいますが、私はまだ5人です私はそれほど悪くないと思います。 –

0

ありませんあなたはの.jsファイル内のサーバー側のタグを使用することはできません。 代わりにページ/コントロールに必要な変数を作成します。

0

Javascriptファイルは静的ファイルであり、Webサーバーによって静的にも処理され、ASP.NETで処理されません。

実際にその値を挿入する場合は、空の.aspxページを作成し、そこにすべてのjavascriptを含めて、.aspxページをscript srcに含めます。

しかし、私はおそらくあなたが値を受け取る必要があるたびにjavascriptから呼び出すWebメソッドでWebサービスを持っていることを好みます。