2011-04-14 15 views
0

jQueryを使用してパーシャルビューを生成するにはどうすればよいですか?結果:リンクをクリックしても何も起こっていません。jQueryを使用してパーシャルビューにデータを入力するにはどうすればよいですか?

<script type="text/javascript"> 
$(document).ready(function() { 
     $('.block').click(function() { 
      var id = this.id; 
      $.ajax({ 
       url: "/Link/Link", 
       data: { Letter: id }, 
       success: function (mydata) { 
        var dom = $(mydata); 
        $("#link").empty().append(dom); 
       }, 
       type: "POST" 
      }); 
      return false; 
     }); 
    }); 
</script> 

<a href="<%=Url.Action("Link",new {Letter="A"}) %>" id="A" class="block">A</a> 
<a href="<%=Url.Action("Link",new {Letter="B"}) %>" id="B" class="block">B</a> 

<div id="link"> 
    <% Html.RenderPartial("LinkUC", ViewData["Letter"]); %> 
</div> 

コントローラ

public ActionResult Link(string Letter) 
{ 
    ViewData["Letter"] = LinkManagementRepository.GetAllOrganizationLinks(Letter); 

    return PartialView("LinkUC",ViewData["Letter"]); 
} 
+0

@mazher、あなたはserver( 'mydata'変数)によって返された値をチェックしましたか?シンプルなアラートでは、サーバーから正しいhtmlを取得したかどうかを確認できます。 – VinayC

+0

あなたはFireBugで見ましたか? –

+0

メソッドはリンク/リンクが呼び出されても何も返しません – maztt

答えて

0

何LinkManagementRepository.GetAllOrganizationLinks(手紙)?私はViewDataを設定する必要はないと思うが、repostiroyコールを直接返す。代わりに、強く型付けされたビューを使用していないのはなぜ

return PartialView("LinkUC",ViewData["Letter"]); 

public ActionResult Link(string letter) 
{ 
    var model = LinkManagementRepository.GetAllOrganizationLinks(letter); 
    return PartialView("LinkUC", model); 
} 

はこのViewData疫病を取り除く

1

地球上で何がこれです。

+0

あなたは知りませんか?これは弱く強いタイプの集団です。 :)これは彼の質問に対する答えではありませんが、@ mazharのための私からの+1は、このような恐ろしいことをしません。 ** EVER **。 –

0

.loadを試してください。

PartialViewResultを返すアクションの方に向けると、レスポンスのHTMLが呼び出されたラップされたセットにロードされます。

$('div#link).load('yourPartialViewResultAction', {Letter: id }, null);

関連する問題