Hi,
I am facing the following issue: my dropdown, that is inside a Kendo UI grid, is showing as textbox.
Here is the code of the grid:
@model Portal.Web.Areas.Orders.Models.IngressoMerceViewModel<
br
><
br
>@(Html.Kendo().Grid<
Portal.Web.Areas.Orders.Models.IngressoMerceGridViewModel
>()<
br
> .Name("grid")<
br
> .Events(e => e.DataBound(@<
text
>function() {for (var i = 0; i @Html.Raw("<") this.columns.length; i++) {this.autoFitColumn(i);}}</
text
>))<
br
>.Columns(columns =><
br
>{<
br
>columns.Template("<
input
type
=
'checkbox'
/>");<
br
>columns.Bound(p => p.Posizione).Title("Posizione").Width(200);<
br
>columns.Bound(p => p.Materiale).Title("Materiale").Width(200);<
br
>columns.Bound(p => p.Description).Title("Testo breve").Width(200);<
br
>columns.Bound(p => p.WarehouseLogicStore)<
br
> .Editable("false").Width(200)<
br
>.ClientTemplate(Html.Kendo().DropDownList().Events(e => e.Change("change"))<
br
>.Name("WHLogicValue").DataTextField("Code").DataValueField("Code").DataSource(source =><
br
>{<
br
>source.Read(read =><
br
>{<
br
>read.Action("WarehouseLogicTypes_Read", "IngressoMerce");<
br
>});<
br
>}).Deferred(!Model.IsAjax).ToClientTemplate().ToString()<
br
><
br
>);<
br
>columns.Bound(p => p.Quantity).Title("Qta Ordine").Width(200);<
br
>columns.Bound(p => p.UnitOfMeasure).Title("UM").Width(200);<
br
>columns.Bound(p => p.ReceivedQty).Title("Qta già ricevute").Width(200);<
br
>columns.Template("<
input
type
=
'text'
value=#= InProgressQtyCheck# onclick=\"myFunction(p)\"/>").Title("Qta ricevute");<
br
>columns.Template("<
input
type
=
'checkbox'
/>").Title("Completa Pos.Ordine");<
br
>columns.Bound(p => p.InProgressQtyCheck).Title("Qta da ricevere").Width(200);<
br
>columns.Bound(p => p.ExpectedDeliveryDate).Format("{0:dd/MM/yyyy}").Title("Data consegna prevista").Width(200);<
br
>columns.Bound(p => p.QualityCheckNeeded).Title("Check qualitativo richiesto").Width(220);<
br
>})<
br
>.Pageable()<
br
>.Sortable()<
br
>.Scrollable()<
br
>.HtmlAttributes(new { style = "height:430px;" })<
br
>.DataSource(dataSource => dataSource<
br
>.Ajax()<
br
>//.Read(read => read.Url("/orders/details").Type(HttpVerbs.Get))<
br
>.Read(read => read.Action("OrderDetails_Read", "IngressoMerce", Model))<
br
>)<
br
>.Deferred(!Model.IsAjax)<
br
><
br
><
br
><
br
>)<
br
><
br
><
br
><
br
> <
script
><
br
> myFunction(p)<
br
> {<
br
><
br
> }<
br
> </
script
>
Here is the call of the action method, that does not fire in the controller:
[AllowAnonymous]
public async Task<JsonResult> WarehouseLogicTypes_Read()
{
try
{
var types = await gateway.GetWarehouseLogicTypes();
return Json(types);
}
catch (Exception ex)
{
//logger.LogError(ex.Message);
throw ex;
}
}