Kendo UI DataSource JSONP外部回调函数名称不可用

时间:2015-08-26 11:42:10

标签: kendo-ui jsonp

我将我的回调调用直接放在kendo数据源示例中,我无法将其渲染。我错过了什么?

数据源无法加载,我不断收到类型错误。任何帮助将不胜感激。

这是我输入剑道道场的代码。

<!DOCTYPE html>
<html>
<head>
    <base href="http://demos.telerik.com/kendo-ui/datasource/remote-data-binding">
    <style>html { font-size: 14px; font-family: Arial, Helvetica, sans-serif; }</style>
    <title></title>
    <link rel="stylesheet" href="//kendo.cdn.telerik.com/2015.2.805/styles/kendo.common-material.min.css" />
    <link rel="stylesheet" href="//kendo.cdn.telerik.com/2015.2.805/styles/kendo.material.min.css" />

    <script src="//kendo.cdn.telerik.com/2015.2.805/js/jquery.min.js"></script>
    <script src="//kendo.cdn.telerik.com/2015.2.805/js/kendo.all.min.js"></script>
</head>
<body>
<div id="example" class="k-content">

    <div class="demo-section k-header wide">
        <div id="products"></div>
    </div>

    <script type="text/x-kendo-template" id="template">
        <div class="product">
            <img src="../content/web/foods/#= ImageURL #.jpg" alt="#: ProductName # image" />
            <h3>#:Description#</h3>
            <p>#:kendo.toString(CurPrice, "c")#</p>
        </div>
    </script>

    <script>
        $(function() {
            var template = kendo.template($("#template").html());

            var dataSource = new kendo.data.DataSource({
                transport: {
                    read: {
                        url: "//justclickzmedia.net/Search/Get/?callback=callback&query=coach+handbag",
                        dataType: "jsonp"
                    }
                },
                requestStart: function() {
                    kendo.ui.progress($("#products"), true);
                },
                requestEnd: function() {
                    kendo.ui.progress($("#products"), false);
                },
                change: function() {
                    $("#products").html(kendo.render(template, this.view()));
                }
            });

            dataSource.read();
        });
    </script>

    <style>
        #products {
            padding: 10px;
            margin-bottom: -1px;
/*            height: 510px;
            overflow: auto;*/
        }
        .product {
            float: left;
            position: relative;
            width: 111px;
            height: 170px;
            margin: 0;
            padding: 0;
        }
        .product img {
            width: 110px;
            height: 110px;
        }
        .product h3 {
            margin: 0;
            padding: 3px 5px 0 0;
            max-width: 96px;
            overflow: hidden;
            line-height: 1.1em;
            font-size: .9em;
            font-weight: normal;
            text-transform: uppercase;
            color: #999;
        }
        .product p {
            visibility: hidden;
        }
        .product:hover p {
            visibility: visible;
            position: absolute;
            width: 110px;
            height: 110px;
            top: 0;
            margin: 0;
            padding: 0;
            line-height: 110px;
            vertical-align: middle;
            text-align: center;
            color: #fff;
            background-color: rgba(0,0,0,0.75);
            transition: background .2s linear, color .2s linear;
            -moz-transition: background .2s linear, color .2s linear;
            -webkit-transition: background .2s linear, color .2s linear;
            -o-transition: background .2s linear, color .2s linear;
        }
        .k-listview:after {
            content: ".";
            display: block;
            height: 0;
            clear: both;
            visibility: hidden;
        }
    </style>
</div>


</body>
</html>

1 个答案:

答案 0 :(得分:0)

这不是OP的答案,但如果有人来这里得到“TypeError - kendo.data.DataSource不是构造函数”。检查你是否意外地包含了kendo.core.min.js而不是kendo。 ui .core.min.js