- PR -

ASP.NETでのクライアントスクリプト

1
投稿者投稿内容
kor
会議室デビュー日: 2005/02/13
投稿数: 2
投稿日時: 2005-02-13 18:55
ASP.NETでのコンポーネントをいくつか作成しようとしています。

クライアントスクリプトにjavascriptを使用していますが
いくつかコンポーネントを作成していくうちにスクリプトに
重複がでてきました。

現在はスクリプトをリソースに埋め込み実行時に
埋め込んだスクリプトを読み出しOnPreRenderで
RegisterClientScriptBlockを使用し重複しないようにしています。

現在はhtmlにスクリプトの文字列を直接出力しているのですが
スクリプトの量が多くなるにつれ可読性が落ちるため
<script type="text/javascript" srcタグにて出力しようと思うのですが
このsrc部分を動的に作成したいのですが
(画像の動的生成のように)
どのように実現すればよいのか検討がつかず、投稿させていただきました。

どなたか方針等、教えてはいただけないでしょうか?

たつごろー
ぬし
会議室デビュー日: 2004/10/25
投稿数: 496
投稿日時: 2005-02-13 21:35
引用:

現在はhtmlにスクリプトの文字列を直接出力しているのですが
スクリプトの量が多くなるにつれ可読性が落ちるため
<script type="text/javascript" srcタグにて出力しようと思うのですが
このsrc部分を動的に作成したいのですが
(画像の動的生成のように)
どのように実現すればよいのか検討がつかず、投稿させていただきました。



返答が付きにくいようなので回答しにくい質問ということかも。

「ASP.NETのコンポーネント」とは何を指していますか?
現状で困るのは、IEでソース表示したときの可読性が低いからだけですか?
なにかほかにももとめていませんか?
korさんには求めているゴールが見えているのに、それが正しいものかどうかを確認したいということではないですか?だとしたら、その思い描いているゴールを書いていただいたほうが回答が得られやすいと思います。



_________________
たつごろー http://www.codeseek.net
MCSE MCSD.NET、MCDBA、MCSA、MCAD
Oracle Master Platinum 9i、Oracle Master Linux+

[ メッセージ編集済み 編集者: たつごろー 編集日時 2005-02-13 21:40 ]
kor
会議室デビュー日: 2005/02/13
投稿数: 2
投稿日時: 2005-02-13 21:59
ご回答ありがとうございます。
色々説明不足ですね。申し訳ない。

>「ASP.NETのコンポーネント」とは何を指していますか?
色々なものを製作しています。
具体的にはFormsのDateTimePickerのような動きをするものやToolTip等です。

>現状で困るのは、IEでソース表示したときの可読性が低いからだけですか?
>なにかほかにももとめていませんか?
すでに述べたもの以外には
getElementByIdのようなブラウザ依存する問題がありまして
作成物についてはブラウザ種別によりRegisterClientScriptBlockで登録する
scriptを動的に切り替えています。
またsrcを動的にしたいという意図は、使用するユーザーに対し
固定でパスを指定するような方式でなく、
コンポーネントをドラッグした時点で
他に設定しなくていいようにしたいという点もあります。

現時点で悩んでいる点は以下の2点です。
1、srcを動的に生成する方法。
2、生成するsrcが複数コンポーネントで同じスクリプトを使用する場合に
  同じスクリプトを出力しないようにする方法。
(これについては現状ではメソッド単位で登録することで重複しないようにと
考えております。他に何か名案がございましたら教えていただきたいです。)

以上、よろしくお願いいたします。
たつごろー
ぬし
会議室デビュー日: 2004/10/25
投稿数: 496
投稿日時: 2005-02-13 22:17
引用:

>「ASP.NETのコンポーネント」とは何を指していますか?
色々なものを製作しています。
具体的にはFormsのDateTimePickerのような動きをするものやToolTip等です。


コンポーネントの実装技術は何ですか?

Web カスタム コントロールを試していないなら、これで解決できるかもしれないので
検討してみてください。

それでもダメなら、どうダメなのかを書いていただけるといいかも。

MSDN Library Japan
Visual Basic および Visual C# の概念
Web カスタム コントロールの概要http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vbcon/html/vbconintroductiontocustomwebcontrols.asp

_________________
たつごろー
codeseek
こみゅぷらす
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2005-02-14 21:24
 スクリプトを別のファイルに出す(引数でClientIDを渡すようにする)とか、同じソースになるものは同じ名前でレジストするとか、という問題ではない?

_________________
たつごろー
ぬし
会議室デビュー日: 2004/10/25
投稿数: 496
投稿日時: 2005-02-15 04:13
korさんその後どうですか?
問題が解決したということでしたら、書いていただけるとありがたいです。
引用:

またsrcを動的にしたいという意図は、使用するユーザーに対し
固定でパスを指定するような方式でなく、
コンポーネントをドラッグした時点で
他に設定しなくていいようにしたいという点もあります。


これの意味がよくわかりませんでした。
ユーザとは開発者のことを指していますか。
コンポーネントとはコントロールのことを指していますか。
現状では動作はしていますか。

korさんがやりたいと思っていることがあるのでしょうが、それが見えてきません。
現状で懸案事項になっていることが、実はそれほど大きな問題ではない、という
ことはありませんか?
なにを解決したいのか、なぜ解決しなければいけないのかを、もっと整理して書い
ていただけるといいかも。



_________________
たつごろー http://www.codeseek.net
MCSE MCSD.NET、MCDBA、MCSA、MCAD
Oracle Master Platinum 9i、Oracle Master Linux+


[ メッセージ編集済み 編集者: たつごろー 編集日時 2005-02-15 04:17 ]
たつごろー
ぬし
会議室デビュー日: 2004/10/25
投稿数: 496
投稿日時: 2005-02-15 11:42
引用:

コンポーネントとはコントロールのことを指していますか。


自爆レス
コンポーネントクラスというものがあるんですね。
使ったことなかった。ノーチェックでした。
もしかして、これをつかってて困っているということですか?
でしたら、適当なこと言ってごめんなさい。>kor
調べてみます。

_________________
たつごろー
codeseek
こみゅぷらす
1

スキルアップ/キャリアアップ(JOB@IT)