2012-07-01 35 views
1

下面我所有的代碼,爲什麼不在這裏調用jQuery代碼...請建議?

* 型號*

下面是型號代碼,

public class MyViewModel 
{ 
    public int? Year { get; set; } 
    public int? Month { get; set; } 

    public IEnumerable<SelectListItem> Years 
    { 
     get 
     { 
      return Enumerable.Range(2000, 12).Select(x => new SelectListItem 
      { 
       Value = x.ToString(), 
       Text = x.ToString() 
      }); 
     } 
    } 
} 

控制器

下面是控制器代碼,

// 
    // GET: /MenuSix/ 

    public ActionResult Index() 
    { 
     var model = new MyViewModel(); 
     return View(model); 
    } 

    public ActionResult Months(int year) 
    { 
     if (year == 2011) 
     { 
      return Json(
       Enumerable.Range(1, 3).Select(x => new { value = x, text = x }), 
       JsonRequestBehavior.AllowGet 
      ); 
     } 
     return Json(
      Enumerable.Range(1, 12).Select(x => new { value = x, text = x }), 
      JsonRequestBehavior.AllowGet 
     ); 
    } 

查看

下面是查看代碼,

@model DemoWeb.Models.MenuSix.MyViewModel 
@using (Html.BeginForm()) 
{ 
@Html.DropDownListFor(
x => x.Year, 
new SelectList(Model.Years, "Value", "Text"), 
"-- select year --" 
) 
@Html.DropDownListFor(
x => x.Month, 
Enumerable.Empty<SelectListItem>(), 
"-- select month --" 
) 
} 

@section PageScriptsAndCSS{ 
<script type="text/javascript"> 
    $('#Year').change(function() { 
     debugger; 
     var selectedYear = $(this).val(); 
     if (selectedYear != null && selectedYear != '') { 
      $.getJSON('@Url.Action("Months")', { year: selectedYear }, 
function (months) { 
       var monthsSelect = $('#Month'); 
       monthsSelect.empty(); 
       $.each(months, function (index, month) { 
        monthsSelect.append($('<option/>', { 
         value: month.value, 
         text: month.text 
        })); 
       }); 
      }); 
     } 
    }); 

</script> 
} 

我測試上面的代碼,但在jQuery代碼這裏不叫,請說明爲什麼下拉更改事件不是在jQuery的叫什麼?

回答

1

將javascript代碼包裝在document.ready中,以確保控件在綁定然後事件時可用。 IT看起來這種JavaScript在頭呈現在這一點下拉還沒有被添加到DOM

$(document).ready(function() 

{ $(「#年」).///代碼 的休息});

+0

哦是的....我忘了添加這個... thnx很多! – user584018

相關問題