2012-09-19 32 views
2

每個項目的第一變化 -MVC3下拉列表僅進入控制器,用於我有以下下拉列表定義

@Html.DropDownListFor(x => x.SelectedValue, Model.myEntity, new { @id = "ddList" }) 

用下面的jquery -

<script type="text/javascript"> 
    $(document).ready(function() {   
     $("#ddList").change(function() {    
      var myid = $("#ddList").val(); 
      $.ajax({ 
       url: 'Controller/Action/', 
       data: { 
        'id': myid 
       }, 
       datatype: 'html', 
       success: function (result) { success(result); } 
      }); 
     }); 

    }); 


    function success(result) {   
     $("#partial").html(result); 
    } 
</script> 

每次我改變選擇在下拉時間它首次正確進入控制器。 如果我再次選擇相同的選項,我的控制器操作從不輸入。

有沒有人有任何想法,爲什麼我的代碼沒有擊中控制器的任何後續下拉選擇。

感謝

編輯 -

下面是div的內容部分 - 它實際上呈現一個MVC局部視圖 -

<div id="partial" style="height: 90%"> 
     @Html.Partial("_Activities")  
</div> 
+0

你是否用ajax結果替換下拉菜單? – Shyju

+0

我該怎麼做? – czuroski

+0

這是我的問題給你。 div部分的內容是什麼? – Shyju

回答

1

看起來像一個緩存的問題給我。在數據類型爲HTML的JQuery Ajax中,默認情況下緩存爲true,並將其設置爲false。試試這個:

$.ajax({ 
       url: 'Controller/Action/', 
       data: { 
        'id': myid 
       }, 
       datatype: 'html', 
       cache: false, 
       success: function (result) { success(result); } 
      });