簡體   English   中英

kendo UI-基於列值的kendo ui網格中的條件列

[英]kendo UI- conditional column in kendo ui grid base on column values

我在使用kendo網格列模板時遇到問題我的方案是這樣的:

我的列將根據另一個列值示例創建操作鏈接:

columns.Bound(a => a.ref_nb).Width(145).Template(@<text></text>).ClientTemplate("#= (tran_ty =='SO') ? '<a>" + "${data.ref_nb}" + "</a>' : '<span>No Entry</span>'#");

在這種情況下使用三進制來基於其他tran_ty列值基於列編碼的內容,但是在頁面拋出的模板上存在錯誤。 我有可能實現這個目標嗎? 任何幫助,將不勝感激。 TIA

試試這個ClientTemplate()

#= if(tran_ty == 'SO') { # <a href='#=ref_db#'>#=ref_db#</a> # } else { # <span>No Entry</span> # } #

請注意,您可能需要稍微調整一下引號,但這應該會使您進入正確的路徑。

在此處查看有關語法的更多信息: http//docs.telerik.com/kendo-ui/framework/templates/overview#template-syntax

我個人認為在嘗試執行更復雜的客戶端模板時,此過程更容易

將綁定列更改為:

columns.Bound(a => a.ref_nb).Width(145).ClientTemplate("#=myClientSideTemplate(data)#");

然后有一些javascript為您做格式化:

  function myClientSideTemplate(data) {

        var returnString = ''; 

        if(data.tran_ty === 'SO')
        {
            returnString = '<a href="' + data.ref_nb + '">' + data.ref_nb + '</a>';
        }
        else  
        {
            returnString = '<span>Value is not equal to SO</span>';
        }


        return returnString; 

    }

通過這種方式,您可以繼續使用javascript,並且沒有您可能錯過報價或信息的問題。

這也意味着如果您在其他地方需要此功能,則可以重復使用該代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM