我正在尝试关注this example以过滤我的Infragistics jQuery网格。使用Razor我就像这样设置
@( Html.Infragistics().Grid<InstrumentList>()
.ID("igGrid1")
.Columns(column =>
{
column.For(x => x.ProcessNo).DataType("int").HeaderText("Process No");
column.For(x => x.SubProcess).DataType("string").HeaderText("Sub Process");
column.For(x => x.Stream).DataType("int").HeaderText("Stream");
column.For(x => x.EquipmentCode).DataType("string").HeaderText("Equipment Code");
column.For(x => x.SequenceNumber).DataType("string").HeaderText("Sequence Number");
column.For(x => x.EquipmentIdentifier).DataType("string").HeaderText("Equipment Identifier");
column.For(x => x.Tag).DataType("string").HeaderText("Tag");
})
.Features(features =>
{
features.Sorting().Mode(SortingMode.Single).ColumnSettings(settings =>
{
settings.ColumnSetting().AllowSorting(true);
});
features.Selection().MouseDragSelect(true).MultipleSelection(true).Mode(SelectionMode.Row);
features.Filtering().ColumnSettings(settings =>
{
settings.ColumnSetting().ColumnKey("Tag").AllowFiltering(false).FilterCondition("startsWith");
});
})
.ClientDataSourceType(ClientDataSourceType.JSON)
.DataSourceUrl(Url.Action("GetInstrumentLists"))
.Width("100%")
.Height("700px")
.DataBind()
.Render()
)
我的布局文件顶部也列出了这个:
<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-ui-1.8.11.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/Infragistics/ig.ui.js")" type="text/javascript"></script>
我从$.tmpl is not a function
的第17683行收到错误ig.ui.js
。如果我删除网格设置中的过滤线,它就会消失。
可能是因为我正在使用jquery 1.5.1并且脚本是基于jquery 1.4.4构建的吗? 1.5.1是MVC 3项目附带的默认版本。有任何想法吗?
答案 0 :(得分:1)
这是正确的,网格有一个选项是否使用jQuery模板,默认情况下是关闭的。它被称为jQueryTemplating(true / false)。出于性能原因,这是关闭的 - 默认渲染比jQuery的模板快得多,但后者允许进行模板化。另一方面,过滤也使用模板来设置某些过滤区域的样式,因此这需要加载tmpl.js。它是jQuery的一部分,但我们仍然将它作为产品的一部分。它只需要作为脚本引用包含在您的示例中。
非常感谢您注意到这一点。我们将确保过滤代码中不存在此依赖项。 天使
答案 1 :(得分:0)
对于任何想要了解的人,我最终找到了一个名为jquery.tmpl.js的插件来解决这个问题。 不,我使用jquery 1.5.1并不重要。
答案 2 :(得分:0)
在12.1及更高版本中,有一个自定义模板引擎随Ignite UI工具包提供,它不需要引用jQuery模板,因此不推荐使用jQueryTemplating选项。这也记录在API docs。
中