6

プロジェクトをフレームワークのベータリリースに移動しましたが、ASP.net MVC私が抱えている唯一の問題はjQueryjQueryUIです。

取引は次のとおりです。

Site.Masterのスクリプト参照があります。

<script src="../../Scripts/jquery-1.2.6.js" type="text/javascript"></script>
<script src="../../Scripts/jquery-ui.js" type="text/javascript"></script>

そして、それらを使用すると、accordian UI1つの問題を除いて、ビューの1つにあるものが完全に機能します。からの画像ThemeRollerがページに含まれていません。jQuery参照をコメントアウトすると、ThemeRoller画像がそこにあります。すべてのcssはにありContent folder、すべてのスクリプトはにありScripts folderます。

これがばかげた道の問題であることは知っていますが、それは私をけいれんさせています。

私は何が欠けていますか?

アップデート

私は無駄に最初の答えを試しました、詳細についてはコメントを読んでください。ご覧いただきありがとうございます。

2番目のアプローチも機能していません。私は困惑しています。

別の更新

スクリプトにタグを使用するUrl.Contentと、実際にスクリプトを正しく実行できます。スタイルシートに通常のタグを使用すると、ThemeRollerに関連するすべてのスタイルを除いて、すべてのスタイルがページに表示されます。

jquery-ui-themeroller.cssファイルはContentフォルダーにあり、要素を検査すると、cssが存在します。問題は、このcssファイルからContentフォルダーにもあるthemerollerのimagesフォルダーへのマッピングにあると思われます。次のように指定されたこのファイルの画像リンク:background: url(images/foo.gif)

このファイルのリンクを変更する必要がありますか?

4

4 に答える 4

4

すべてのビューが同じレベルでない限り、どちらかを使用する必要があります

  • /Scripts/jquery-1.2.6.jsなどの絶対パスを使用します
  • または、さらに良いことに、<%= Url.Content( "〜/ Scripts / jquery-1.2.6.js")%>などの仮想パスを解決します

Url.Content()http://jvance.com/media/2008/10/18/UrlContent5.media

于 2008-10-18T04:16:44.013 に答える
2

これは役に立ちますか?

http://forums.asp.net/p/1334947/2690469.aspx

この不一致の理由は非常に単純ですが、理解するのは簡単ではありません。<head runat="server"> 内に <link> タグがある場合、ASP.NET は <link> タグを処理して URL を検出し、アプリケーションのルートを基準にして URL を解決します。ページに <script> タグがある場合 (runat="server" なし)、ASP.NET はそれを放置します。これは単純な古い HTML であるためです。

<link> タグと同様に、アプリのルートに対して相対的に解決されるため、これを解決するために Url.Content() を使用する方法を使用します。

于 2008-10-18T12:54:50.397 に答える
0
    protected void Page_Load(object sender, EventArgs e)
    {
        Page.ClientScript.RegisterClientScriptInclude(this.GetType(),"JQuery", ResolveUrl("~/js/jquery.min.js"));
        Page.ClientScript.RegisterClientScriptInclude(this.GetType(), "JQueryUI", ResolveUrl("~/js/jquery-ui.custom.min.js"));
于 2009-03-17T21:21:03.847 に答える
0

画像の現在の場所を指すように jquery-ui-themeroller.css のリンクを変更する必要があります。

同様に、css ファイルが探している画像のパスを更新する必要があります。

background: url(images/foo.gif)

パスから「images/」を削除して、次のようにします。

background: url(foo.gif)

CSSと画像の両方がコンテンツフォルダーにあるためです。

于 2008-10-18T18:37:00.110 に答える