2012-03-15 7 views
0

こんにちは私は部分的なビューやコントローラ(mvc)から頭にリンクファイルを置こうとしていますが、何か良いアイデアがありますか?部分的な視点から頭の中にCSSファイルを置く

私はそれは、これが何か良いであればイムわからない、体に私のために次のことをレンダリングするジム・Tollan

によって作られたthisコメントを試してみましたか?

<script type='text/javascript'> 

    $(function(){ 

     $('head').prepend('<link rel="canonical" href="/product/productname/productid"></link>'); 

    }); 

</script> 

この問題を解決するために私がこの問題を一日中悩ましていることに感謝します。

EDIT
これで私の現在のコードのインデックスページ

ヘッドコンテンツ

<asp:Content ID="Content3" ContentPlaceHolderID="HeadContent" runat="server"> 
    <%: ViewData["Message"] %> 
</asp:Content> 

<div id="container"> 
     empty 
</div> 

    <a href="#" class="click-me">Click me</a> 

(これは私の本当のシナリオを複製するための唯一のモックアップコードです)

コントローラアクション

public ActionResult Index() 
    { 
     ViewData["Message"] = "this is"; 
     return View(); 
    } 

[HttpPost] 
public PartialViewResult Index(string value) 
{ 
    ViewData["Message"] = "this is not"; 
    return PartialView("_homePartial"); 
} 

jqueryの

$(".click-me").click(function() { 
       $.post("/Home/Index", function (data) { $('#container').html(data); }, "html"); 

、それのthats、その明白なのViewDataをコントローラ内のポストアクションに設定されているが、私はjqueryの溶液またはへの道を必要とする理由そのその後設定されていない、thatsのparialviewにヘッドの内容を設定します。 });

+0

ASP.Net MVC 3にアップグレードして、Razorを@RenderSection構文で使用することはできますか? –

+0

あなたがリンクしたstackoverflowの質問の中でどのアプローチを試しましたか? –

+0

@ShaneCourtrille、これはどのように役立つでしょうか? –

答えて

0

の内側にこのコードを持っていますが、これは私がやってしまったものです。私はこれを私の部分的な視点に置き、それをそれです。もし誰かがこの良かったことや悪いことについて何かコメントをいただいていたら、私に知らせてください。

$('head').append('content'); 
0

Mvc 2を使用しているので、ViewDataを使用できます。

ViewDataを部分ビューで適切なリンクで設定します。レイアウトページで

ViewData["productlink"] = "/product/productname/productid"; 

は、私はまだそれ自体に、このソリューションの効果を持って、それを監視 headセクション

if(ViewData["productlink"] != null){ 
    <link rel="canonical" href="<%= ViewData["productlink"].toString() %>"></link> 
} 
+0

私はアクションのリンクをレンダリングする可能性がありますが、私はjqueryを使って部分的にレンダリングしています。ビューヘッダーcontentplaceholderに配置し、その場合はレンダリングしますか?私は部分的なビューからこれをやろうとしているように私は言った –

+0

私はそれを試して、それは動作しません、私は部分的なビューから頭を更新する必要があります。 –

+0

あなたは何を試してみることができますか? – ShankarSangoli

関連する問題