0

Я пытаюсь отобразить detials в сетке kendo 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")) 
    ) 
) 
} 

Я не в состоянии связать данные, когда мы подчиняемся кнопку Любые предложения и любые идеи были бы очень благодарны мне ... Большое спасибо ....

ответ

3

вы должны добавить Document.ready в вашем script, как это,

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#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> 

вы должны изменить свой тип кнопки Submit для button

<input id="Submit1" type="button" value="SubmitValue" /> 

и ваша сетка прекрасно связывается.

+0

жаль, что я уже сделал это, но он не работает .... но я не тюк, чтобы связать сетку .. –

+0

привет Пратапа я просто обновить свой код. – Jaimin

+0

большое спасибо ... его работа сейчас .. –

0

Измените тип кнопки «Отправить» на «кнопку» и вызовите событие click в javascript.

$(document).ready(function(){ 
    $('#yourButtonId').click(function(){ 

    //write the desired logic here 

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