0

我们今天刚刚获得 Telerik 控件,我正在尝试为新的 Kendo UI MVC 控件“切换”旧控件。

我有一个select2多选下拉列表,我试图通过 Kendo UI 数据源将“选择到参数”发送到控制器方法以返回特定记录。

这是我的 .cshtml Razor 代码:

@(Html.Kendo().Grid<ICAN.Models.Competency.ViewModels.AssessmentModel>()
    .Name("grid")
    .Columns(columns =>
    {
      columns.Bound(c => c.AssessmentId).Width(50);
      columns.Bound(c => c.AssessmentName).Width(350);
      columns.Bound(c => c.NumOfUnits).Width(150);

    })
    .Sortable()
    .Pageable()
    .Scrollable()
    .ClientDetailTemplateId("unitTemplate")
    .DataSource(dataSource => dataSource
      .Ajax()
      .Read(read => read.Action("GetAssessmentSearch", "Config", new { area = "Competency" }))
    )
    .Events(events=>events.DataBound("dataBound"))
)

这是我的 select2 Html 和 jQuery:

<div class="form-group"><label>Assessments:</label>@Html.ListBoxFor(x => x.Assessments, new MultiSelectList(Model.assessmentSelect, "Id", "Text"), new { Id = "AssessmentId", @class = "form-control select-multiple", multiple = "multiple" })</div>
$('#AssessmentId').select2({ width: "100%", placeholder: "Select an Assessment" });

这是控制器代码:

public ActionResult GetAssessmentSearch([DataSourceRequest]DataSourceRequest request, string Assessments)
{
  var result = service.GetAssessmentSearch(Assessments);
  return Json(result.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
}

我有一个“提交”按钮供用户在 select2 下拉列表中进行多项选择后单击:

<button class="btn btn-alt3 mySubmit" id="submitButton" style="background-color:#bbc4cc; color:#2A4351" onclick="loadUnitTable();"> <i class="lnir lnir-checkmark-circle"></i> Submit Search Criteria</button>
4

1 回答 1

1

在我loadAssessmentTable()onclick提交按钮中,所需要的只是以下内容:

        var values = $('#AssessmentId').val().toString();
    grid.dataSource.read({ "Assessments": values })
于 2021-06-15T15:19:49.093 回答