Kendo ui 剑道Ui网页列表视图

Kendo ui 剑道Ui网页列表视图,kendo-ui,kendo-asp.net-mvc,Kendo Ui,Kendo Asp.net Mvc,我正在使用剑道ui的Listview。我没有服务器包装类,我使用的是免费的web版本。 我的控制器代码如下所示: public ActionResult Index() { return View(); } public ActionResult GetCandidateSearch() { IhrmsEntities Entity = new IhrmsEntities();

我正在使用剑道ui的Listview。我没有服务器包装类,我使用的是免费的web版本。 我的控制器代码如下所示:

public ActionResult Index()
        {

            return View();
        }



public ActionResult GetCandidateSearch()
        {
            IhrmsEntities Entity = new IhrmsEntities();
            List<VW_CANDBASICSEARCH> lstCandidateSearch = Entity.VW_CANDBASICSEARCH.Take(50).ToList();
            return Json(lstCandidateSearch,JsonRequestBehavior.AllowGet);
        }
public ActionResult Index()
{
返回视图();
}
公共行动结果GetCandidateSearch()
{
IHRMSenties实体=新的IHRMSenties();
List lstCandidateSearch=Entity.VW_CANDBASICSEARCH.Take(50.ToList();
返回Json(lstCandidateSearch,JsonRequestBehavior.AllowGet);
}
My index.cshtml

<div>
 @Html.Partial("~/Views/Home/PvCandidateBasicSearch.cshtml")
</div>

@Html.Partial(“~/Views/Home/PvCandidateBasicSearch.cshtml”)
我的PvCandidateBasicSearch.cshtml

<div class="gridHolder" style="width: 100%">
    <div id="listCandidateView" class="itemDisplay"></div>
    <div id="pager"></div>
</div>

<script type="text/x-kendo-tmpl" id="template">
    <div class="itemDisplay">
        <div class="text-label">${CAND_NAME} </div>
        <div class="text-label">${CAND_LOCATION} </div>
        <div class="text-label">${CAND_MOBILE} </div>
        <div class="text-label">${CAND_PRE_EMAIL} </div>
        <div class="text-label">${CAND_SKILL} </div>
        <div class="text-label">${CAND_CITY} </div>
        <a href="/Home/EditCandidate?id=${CAND_ID}" >Edit</a>
       <a href="/Home/DeleteCandidate?id=${CAND_ID}" >Delete</a>
    </div>
</script>






<style type="text/css">
    .text-label {
        font-size: large;
    }



 .itemDisplay {
 margin: auto;
 padding: 6px 8px;
 width:auto;
 min-width:200px;
 height: auto;
 min-height:100px;
 border: 1px solid #999999;
 -webkit-border-radius: 6px;
 border-radius: 6px;
 font-weight: normal;
 background: #deefff;
}

    .gridHolder{width: 100%; height:auto; min-height:300px; margin:auto;}
</style>

${CAND_NAME}
${CAND_LOCATION}
${CAND_MOBILE}
${CAND_PRE_EMAIL}
${CAND_SKILL}
${CAND_CITY}
.文本标签{
字体大小:大号;
}
.项目显示{
保证金:自动;
填充:6px 8px;
宽度:自动;
最小宽度:200px;
高度:自动;
最小高度:100px;
边框:1px实心#999999;
-webkit边界半径:6px;
边界半径:6px;
字体大小:正常;
背景:迪夫;
}
.gridHolder{宽度:100%;高度:自动;最小高度:300px;边距:自动;}
我在layout.cshtml中的javascript代码如下所示

<script type="text/javascript">

    var dataSource = new kendo.data.DataSource({

        transport: {
            read: {
                url: '/Home/GetCandidateSearch',
                type: "GET",
                dataType: "json"

            }
        },
        pageSize: 15

    });

    $("#pager").kendoPager({

        dataSource: dataSource
    });

    $("#btnSearch").click(function () {


        LoadListView();

    });
    function LoadListView() {


        $("#listCandidateView").kendoListView({

            dataSource: dataSource,
            pageable: true,
            template: kendo.template($("#template").html())
        });


    }


</script>

var dataSource=new kendo.data.dataSource({
运输:{
阅读:{
url:“/Home/GetCandidateSearch”,
键入:“获取”,
数据类型:“json”
}
},
页面大小:15
});
$(“#寻呼机”).kendoPager({
数据源:数据源
});
$(“#BTN搜索”)。单击(函数(){
LoadListView();
});
函数LoadListView(){
$(“#listCandidateView”).kendoListView({
数据源:数据源,
pageable:对,
模板:kendo.template($(“#template”).html()
});
}

当我第一次单击搜索按钮时,它完全进入GetCandidateSearch操作方法并显示结果。但当我第二次单击搜索按钮时,它不会进入操作方法。请帮帮我。

您误解了数据源的概念

数据源是保存从请求中收集的数据的对象。在第二次单击时,您只需将该数据源重新绑定到ListView

基本上,您需要在页面加载时将列表视图绑定到数据源,然后“OnClick”,do
datasource.read()

试试这个:

var dataSource = new kendo.data.DataSource({

    transport: {
        read: {
            url: '/Home/GetCandidateSearch',
            type: "GET",
            dataType: "json"

        }
    },
    pageSize: 15

});
$(document).ready(function() { 
    $("#listCandidateView").kendoListView({
        dataSource: dataSource,
        pageable: true,
        template: kendo.template($("#template").html())
    });
});


$("#btnSearch").click(function () {
    $("#listCandidateView").datasource.read();
});

并不是说确切的代码会起作用,但它应该能让您了解方法。

下面的内容有帮助吗?如果是,请将其作为答案