この例に従って、InfragisticsjQueryグリッドでフィルタリングを取得しようとしています。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は、MVC3プロジェクトに付属するデフォルトバージョンです。何か案は?