1

質問にあるように、私はカスタムasp.netコントロールを開発しており、ページで参照するにはいくつかのJSライブラリが必要であることをユーザーに通知する必要があります。

これを行うための最良の方法は何ですか?

4

3 に答える 3

0

DOMが完全にロードされたら、必要なライブラリが存在するかどうかを確認します。

function init() {
    if(!jQuery) {
        alert('This control requires jQuery');
    }
}

window.onload = init;

上記のコードはあなたにアイデアを与えるでしょう。ニーズに合わせて変更します。

于 2013-01-16T22:50:24.673 に答える
0
  1. コメントコメント
  2. asp.netコントロールと必要なJavaScriptライブラリを使用してnugetパッケージを作成します。

2番目のオプションに投票しますが、nugetも頻繁に使用します。

于 2013-01-16T20:38:32.090 に答える
0

ドキュメント以外は提案しませんが、本当に必要な場合は、ヘッダー内の別のスクリプト(依存関係JSを挿入する場所の後に)を使用して依存関係JSオブジェクトを確認し、それに応じてユーザーに警告することができます。そのような;

if (typeof someDependencyObject === 'undefined')
{
    alert("someDependencyObject is required with SomeASP-NET Control.");
}

ただし、より良い方法は、カスタム制御コード内に独自のスクリプトを。で登録することClientScript.RegisterClientScriptBlockです。

<script runat="server">
    public void Page_Load(Object sender, EventArgs e)
    {
        String jsName = "MyCustomScript";
        Type type = this.GetType();

        // Register the script if not already registered.
        if (!Page.ClientScript.IsClientScriptBlockRegistered(type, jsName))
        {
            StringBuilder js = new StringBuilder();
            js.Append("<script type=\"text/javascript\">");
            js.Append("function someFunc() {  } ");
            js.Append("</script>");
            Page.ClientScript.RegisterClientScriptBlock(type, jsName, js.ToString());
        }
    }
</script>

こちらのドキュメントを参照してください。

于 2013-01-16T21:05:00.927 に答える