2011-03-03 21 views
1

我在我看來,使用DropDownListFor:使用ASP .NET MVC 2,Html.DropDownListFor - 如何調用選擇的JQuery函數?

<%: Html.DropDownListFor(model => model.Type, 
         new SelectList(ComponentsFactory.GetTypeList().Select(a => new { Name = Regex.Replace(a, @"^.*\.", ""), Value = a }).OrderBy(a => a.Name), 
          "Value", "Name", Model.Type), "Select . . .", null) %> 

我也有已經包含在我的頭在.js文件的腳本jQuery的功能和一切:

function GetRequiredFields(type) 
{ 
...//do JQuery AJAX stuff 
} 

我想調用帶參數「type」的「GetRequiredFields」作爲select上所選項目的值,並用它來更新名爲「RequiredFields」的「div」。我怎樣才能做到這一點?我是否需要使用除Html.DropDownListFor之外的其他內容?

回答

0

試試這個

<%: Html.DropDownListFor(model => model.Type, 
        new SelectList(ComponentsFactory.GetTypeList().Select(a => new { Name = Regex.Replace(a, @"^.*\.", ""), Value = a }).OrderBy(a => a.Name), 
         "Value", "Name", Model.Type), "Select . . .", new { @onchange = "GetRequiredFields(this);" }) %> 

以上new { @onchange = "GetRequiredFields(this);" }將創建一個新的屬性onchange的產生<select>

,並在您GetRequiredFields()添加這個

function GetRequiredFields(type) 
{ 
    var selectedValue = $(type).val(); 
    ...//do JQuery AJAX stuff 
} 
1
$(function(){ 
    $('#Type').change(function(){GetRequiredFields($(this).val());}); 
}); 
相關問題