2013-07-27 3 views
1

контроллера:DevExpress ComboBox SelectedIndexChanged в ASP.NET MVC

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

Вам нужно добавить ниже кода в Combobox,

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 Selected Index на стороне клиента

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>

Смежные вопросы