2016-09-22 3 views
-2

Ich wusste nicht, was falsch gelaufen war, wo ich die Funktion definiert hatte, aber es gibt immer noch Fehler.Uncaught TypeError: showItems ist keine Funktion

var sampleData = [ 
    { id: 1, name: "name", items: ["foo", "bar"] } 
]; 
var defaultColumns=[ 
    { field: "id" }, 
    { field: "name" }, 
    { field: "items", "template":kendo.template("#= showItems(items) #") } 
]; 


$("#grid").kendoGrid({ 
    dataSource: {data:sampleData}, 
    columns:defaultColumns 
}); 
function showItems(arr) { 
    return arr.join("</br>") ; 
} 

My sample code

+1

, um Ihren Code verlinkt nicht nur es selbst in der Frage stellen. – jcubic

+0

wenn ich den Code in Code-Snippet. es funktioniert völlig in Ordnung, aber auf JS bin genau das gleiche, aber es gibt mir diesen Fehler – Cylex

Antwort

0

konnte ich die Lösung lösen, indem sie die showItems in global deklarieren und es völlig in Ordnung.

function showItems(arr) { 
 
     return arr.join("</br>"); 
 
    } 
 

 
    var sampleData = [{ 
 
     id: 1, 
 
     name: "name", 
 
     items: ["foo", "bar"] 
 
    }]; 
 
    var defaultColumns = [{ 
 
     field: "id" 
 
    }, { 
 
     field: "name" 
 
    }, { 
 
     field: "items", 
 
     "template": kendo.template("#= showItems(items) #") 
 
    }]; 
 

 

 
    $("#grid").kendoGrid({ 
 
     dataSource: { 
 
     data: sampleData 
 
     }, 
 
     columns: defaultColumns 
 
    });
<!DOCTYPE html> 
 
<html> 
 

 
<head> 
 
    <meta charset="utf-8" /> 
 
    <title>Kendo UI Grid</title> 
 

 
    <link rel="stylesheet" href="http://kendo.cdn.telerik.com/2016.3.914/styles/kendo.common.min.css" /> 
 
    <link rel="stylesheet" href="http://kendo.cdn.telerik.com/2016.3.914/styles/kendo.silver.min.css" /> 
 

 
    <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> 
 
    <script src="http://kendo.cdn.telerik.com/2016.3.914/js/kendo.all.min.js"></script> 
 
</head> 
 

 
<body> 
 

 
    <div id="grid"></div> 
 

 

 
</body> 
 

 
</html>

0
var sampleData = [ 
    { id: 1, name: "name", items: ["foo", "bar"] } 
]; 
var defaultColumns=[ 
    { field: "id" }, 
    { field: "name" }, 
    { field: "items", template: showItems } 
]; 


$("#grid").kendoGrid({ 
    dataSource: {data:sampleData}, 
    columns:defaultColumns 
}); 

function showItems(arr) { 
    return arr.items.join("</br>") ; 
} 
Verwandte Themen