如何从列表视图中的项目传递参数到模板

问题描述:

即时通讯,剑道和JavaScript相当新。所以如果我的问题很愚蠢,我很抱歉。如何从列表视图中的项目传递参数到模板

我有这样的代码

<script type="text/x-kendo-tmpl" id="portalTemplate"> 
    <div class="product"> 
     <a href="@Url.Action(PortalUrl , "Portal")"> 
      <img src="@Url.Content("../Images/Portal/cs-CZ/")#:ImageName#"   alt="#:ImageName#" style="margin : 4px" /> 
     </a> 
    </div> 
</script> 

<style> 
     .product { 
     float: left; 
     position: relative; 
    } 
</style> 

<div class="container-fluid"> 
    <div class="row"> 
     <div class="col-xs-18 col-md-12"> 
      @(Html.Kendo().ListView<CS_Shared.MemberShipDataTypes.PortalResult>() 
        .Name("portalListView") 
        .TagName("div") 
        .ClientTemplateId("portalTemplate") 
        .HtmlAttributes(new { style = "height:650px;" }) 
        .DataSource(dataSource => { 
         dataSource.Read(read => read.Action("GetPortalData", "Portal")); 
        }) 
    </div> 
    </div> 
</div> 

问题是很清楚,我需要通过关于门户网站的URL在portalTemplate的信息。用变量替换PortalUrl,如“#:PortalUrl#”。任何帮助?

+0

在这方面的消息? – DontVoteMeDown

试试这个模板:

<a href="#:replaceUrl('@Url.Action("PortalUrl", "Portal")', PortalUrl) #"> 

模板将导致类似:

<a href="#:replaceUrl('Portal/PortalUrl', PortalUrl) #"> 

然后宣布在全球范围内的功能:

<script> 
function replaceUrl(original_url, replacement) { 
    return original_url.replace('PortalUrl', replacement); 
} 
</script>