2013-07-27 86 views
1

控制器:DevExpress的组合框在asp.net MVC的SelectedIndexChanged

public ActionResult ComboBox() 
{ 

List<ComboBoxClass> Products = new List<ComboBoxClass>(); 
Products.Add(new ComboBoxClass { ProductName = "Masa" }); 
Products.Add(new ComboBoxClass { ProductName = "Sandalye" }); 
Products.Add(new ComboBoxClass { ProductName = "Bilgisayar" }); 
Products.Add(new ComboBoxClass { ProductName = "Laptop" }); 
Products.Add(new ComboBoxClass { ProductName = "Kulaklık" }); 
Products.Add(new ComboBoxClass { ProductName = "Bardak" }); 
Products.Add(new ComboBoxClass { ProductName = "Kalem" }); 
Products.Add(new ComboBoxClass { ProductName = "Seramik" }); 
Products.Add(new ComboBoxClass { ProductName = "Telefon" }); 

ViewData["Products"] = Products; 

return View(Products); 
} 

查看:

@Html.DevExpress().ComboBox(
settings => 
{ 
settings.Name = "BenimComboBox"; 
settings.Width = 180; 
settings.Properties.ValueField = "ProductName"; 
settings.SelectedIndex = -1; 
settings.Properties.IncrementalFilteringMode = IncrementalFilteringMode.StartsWith; 
settings.Properties.DropDownStyle = DropDownStyle.DropDown; 
settings.Properties.TextField = "ProductName"; 
settings.Properties.ValueField = "ProductName"; 
} 
).BindList(ViewData["Products"]).GetHtml() 

public class ComboBoxClass 
    { 
     public string ProductName { get; set; } 
    } 

我products.I列表上的所有产品ComboBox.How能我将我的SelectedIndexChanged值传递给ActionResult?

我想看看下面的 “字符串的SelectedItem”

public ActionResult SelectedItemHere(string SelectedItem) 
{ 
// Processes.. 
return View(); 
} 

回答

4

您需要将下面的代码添加到您的组合框选择的值,

settings.Properties.ClientSideEvents.SelectedIndexChanged = "SelectedId"; 

JavaScript代码在布局后

function SelectedId() { 
var data= { 
SelectedItem: BenimComboBox.GetValue(), 
}; 

$.ajax({ 
url: "/YOUR CONTROLLER/YOUR ACTİONRESULT", 
type: "POST", 
dataType: "json", 
contentType: 'application/json', 
data: JSON.stringify(data), 

而在去年,

控制器:

public ActionResult SelectedItemHere(string SelectedItem) 
{ 
// Processes.. 
return View(); 
} 
+0

Workes完美,除了我不得不做一个小的变化。发布它以防万一其他用户无法运行该功能。 settings.Properties.ClientSideEvents.SelectedIndexChanged =“function(s,e){getData()}”; – nishantvodoo

0

访问的DevExpress ComboBox中选定指数由客户端

function OnComboBoxSelectedIndexChanged(e, s) { 
 
    //check seleted index 
 

 
    var selected_index = e.lastSuccessValue; 
 
    alert(selected_index); 
 
      
 
    }
<dx:ASPxComboBox ID="cbsample" runat="server" AutoPostBack="true"> 
 
<ClientSideEvents SelectedIndexChanged="OnComboBoxSelectedIndexChanged" /> 
 
    
 
    <Items> 
 
     <dx:ListEditItem Text="item name" Value="0" /> 
 
     <dx:ListEditItem Text="item name1" Value="1" /> 
 
     <dx:ListEditItem Text="item name2" Value="2" /> 
 
    </Items> 
 
    
 
</dx:ASPxComboBox>

相关问题