<%
Html.Telerik().Grid<
Pair<string, string>>()
.Name(
"MaterielItemsGrid")
.DataKeys(datakeyBuilder => datakeyBuilder.Add(item => item.First))
.HtmlAttributes(
new { @class = "gridWidthSmall", style="float:left" })
.ToolBar(toolbarBuilder =>
{
toolbarBuilder.Custom()
.Text(
"Delete")
.Url(
"#")
.HtmlAttributes(
new
{
@class =
"t-grid-delete",
onclick =
"javascript:DeleteFromGrid();return false;"
});
})
.Columns(columnBuilder =>
{
columnBuilder.Base4DCheckbox(
Html,
modelItem => modelItem.First,
"First").Width(15).Sortable(false);
columnBuilder.Bound(modelItem => modelItem.First).Title(
"Serial Number");
columnBuilder.Bound(modelItem => modelItem.Second).Title(
"Barcode");
})
.DataBinding(dataBindingBuilder =>
{
dataBindingBuilder.Ajax();
})
.ClientEvents(events => events.OnDataBinding(
"OnDataBinding"))
.Pageable(p => p.PageSize(10))
.Filterable()
.Sortable(s=>s.OrderBy(o=>o.Add(m=>m.First)))
.Render();
%>
</asp:Content>
< asp:Content ID="Content3" ContentPlaceHolderID="ScriptFooter" runat="server">
<%
= Html.Telerik().ScriptRegistrar()%>
<script src="/Scripts/jquery-ui-1.8/jquery-ui-1.8.custom.min.js" type="text/javascript"></script>
<script type="text/javascript">
<!--
var serialNumbers = [];
function OnDataBinding(e) {
//overriding the default grid ajax binding
//this was added because the grid would not render the checkboxs
//without the binding specified
e.preventDefault();
if (e.sortedColumns.length > 0) {
debugger;
var grid = $('#MaterielItemsGrid').data('tGrid');
grid.filter(e.sortedColumns[0].member +
'-' + e.sortedColumns[0].order);
grid.total = serialNumbers.length;
grid.dataBind(serialNumbers);
}
}
function AddMaterielItems() {
//get the serialNumbers
postnumbers = [];
for (var i in serialNumbers) {
postnumbers.push(serialNumbers[i].First);
}
}
function AddToGrid(result) {
handleErrors(result);
if (result.success == true) {
var item = result.data.serialNumber;
var FID = $('#FID').text();
serialNumbers.push({ First: item, Second: FID + item });
var grid = $('#MaterielItemsGrid').data('tGrid');
grid.total = serialNumbers.length;
grid.dataBind(serialNumbers);
}
}
function DeleteFromGrid() {
// Get the selected grid IDs (global grid variable)
var ids = getSelectedIds($('#MaterielItemsGrid'));
for (var i in ids) {
serialNumbers.splice(i,1);
}
var grid = $('#MaterielItemsGrid').data('tGrid');
grid.dataBind(serialNumbers);
}