ボタンクリックでデータベースを使用しないカスタムリストを使用して、剣道Uiグリッドに詳細を表示しようとしていますが、グリッドに詳細を表示できませんでした。そのために、このようにしました..
これは私のモデルです
namespace KendoPratapSampleMVCApp.Models
{
public class SampleGrids
{
public List<Sample> samples;
}
public class Sample
{
public string SampleDescription { get; set; }
public string SampleCode {get; set;}
public string SampleItems { get; set; }
}
}
getsamples()
これはコントローラーです(ここでは、イベント内でメソッドを呼び出していPostValues
ます(これはボタンクリックイベントです))
namespace KendoPratapSampleMVCApp.Controllers
{
public class SearchResultsDisplayController : Controller
{
//
// GET: /SearchResultsDisplay/
public ActionResult Index()
{
return View();
}
public static IEnumerable<Sample> GetSamples()
{
List<Sample> sampleAdd = new List<Sample>();
Sample s12 = new Sample();
s12.SampleCode = "123se";
s12.SampleDescription = "GOOD";
s12.SampleItems = "newone";
Sample s2 = new Sample();
s2.SampleCode = "234se";
s2.SampleDescription = "Average";
s2.SampleItems = "oldone";
sampleAdd.Add(s12);
sampleAdd.Add(s2);
return sampleAdd;
}
[HttpPost]
public ActionResult PostValues(Sample model)
{
return View("Index",GetSamples());
}
public ActionResult Orders_Read([DataSourceRequest]DataSourceRequest request)
{
return Json(GetSamples().ToDataSourceResult(request));
}
}
}
これが私の見解です(ここではjqueryを使用してバインドしています)
@Scripts.Render("~/bundles/jquery")
<script type ="text/javascript">
$('#Submit1').click(function () {
alert('1'); // dint get this alert when I click on submit button
$('#grid12').data('kendoGrid').dataSource.read();
// $('#grid12').css("display", "block");
});
</script>
@model IEnumerable<KendoPratapSampleMVCApp.Models.Sample>
@{
ViewBag.Title = "Index";
}
<h2>Index</h2>
@using (Html.BeginForm("PostValues", "SearchResultsDisplay", FormMethod.Post))
{
<input id="Submit1" type="submit" value="SubmitValue" />
@(Html.Kendo().Grid<KendoPratapSampleMVCApp.Models.Sample>()
.Name("grid12")
.Columns(columns => {
columns.Bound(p => p.SampleDescription).Filterable(false).Width(100);
columns.Bound(p => p.SampleCode).Filterable(false).Width(100);
columns.Bound(p => p.SampleItems).Filterable(false).Width(100);
})
.Pageable()
.Sortable()
.Scrollable()
.AutoBind(false) // here I am disabling automatic binding at page load
.Filterable()
.HtmlAttributes(new { style = "height:430px;" })
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(20)
.Read(read => read.Action("Orders_Read", "SearchResultsDisplay"))
)
)
}
ボタンを送信するときにデータをバインドできません。何か提案やアイデアをいただければ幸いです...どうもありがとう....