I am trying to use values from a hidden html field. The hidden html field is populated using a template coumn. The column values are populated dynamically as shown beow:
@*
PARTIAL VIEW TO RENDER THE SEARCH GRID, TAKING DATATABLE VIEW AS INPUT.*@
@model CdcSoftware.Pivotal.ThinClient.Common.ViewModel.Search.
SearchViewModel
<script type="text/javascript">
function onDataBound() {
$(
this).show(); //show the grid when it is databound
}
function onLoad() {
$(
'tr', this).live('dblclick', function (e) {
var $tr = $(this);
var $tableID = $tr.find("input[name=TableID]").val();
alert($tableID);
// var listtype = $tr.find("input[name=ListType]").val();
// if (listtype == "SearchesList") {
// var $tableID = $tr.find("input[name=TableID]").val();
// var $searchID. = $tr.find("input[name=SearchID]").val();
// var args = [];
// args['table'] = $tableID;
// args['search'] = $searchID;
// args['srl'] = " ";
// args['doubleclick'] = "true";
// window.location.hash = "/Search/show?table=" + args['table'] + "&search=" + args['search'] + "&srl=" + args['srl'] + "&doubleclick=" + args['doubleclick'];
// }
})
}
</
script>
@(Html.Telerik().Grid(Model.searchData.SearchDataView)
.Name((
string)ViewData["Table"])
.HtmlAttributes(
new { style = "display:none" })
.Columns(columns =>
{
System.Collections.Generic.
Dictionary<string,string> clickableColumns = new Dictionary<string, string>();
System.Collections.Generic.
List<string> HiddenColumns = new List<string>();
foreach (var item1 in Model.searchData.SearchDataView.Table.Columns)
{
string Title = string.Empty;
foreach (var col in Model.ColumnDefinitions)
{
if (col.Name.Equals(((System.Data.DataColumn)(item1)).ColumnName))
{
Title = col.Label;
if (col.IsClickable) clickableColumns.Add(col.Name,col.Action);
if (col.IsHidden) HiddenColumns.Add(col.Name);
break;
}
}
string language = Request.UserLanguages[0];
System.Globalization.
CultureInfo cultureInfo = new System.Globalization.CultureInfo(language);
System.Globalization.
DateTimeFormatInfo info = cultureInfo.DateTimeFormat;
 
string format = "{0:" + info.ShortDatePattern + " " + info.LongTimePattern + "}";
if (((System.Data.DataColumn)(item1)).DataType.FullName == "System.DateTime")
{
columns.Bound(((System.Data.
DataColumn)(item1)).ColumnName).
Title(!
string.IsNullOrEmpty(Title) ? Title : ((System.Data.DataColumn)(item1)).ColumnName).Width("auto")
.Format(format);
}
else if (clickableColumns.ContainsKey(((System.Data.DataColumn)(item1)).ColumnName))
{
 
string action = clickableColumns[((System.Data.DataColumn)(item1)).ColumnName];
// if (((System.Data.DataColumn)(item)).DataType.FullName == "Foreign
columns.Bound(((System.Data.
DataColumn)(item1)).ColumnName)
.Template( @<text>
@Html.Hidden(
"TableID",@item1)
</text>)
.Title(!
string.IsNullOrEmpty(Title) ? Title : ((System.Data.DataColumn)(item1)).ColumnName)
.ClientTemplate(clickableColumns[((System.Data.
DataColumn)(item1)).ColumnName]);
}
else if (HiddenColumns.Contains(((System.Data.DataColumn)(item1)).ColumnName))
{
columns.Bound(((System.Data.
DataColumn)(item1)).ColumnName)
.Visible(
false);
}
else
{
columns.Bound(((System.Data.
DataColumn)(item1)).ColumnName).
Title(!
string.IsNullOrEmpty(Title) ? Title : ((System.Data.DataColumn)(item1)).ColumnName).Width("auto");
}
}
clickableColumns.Clear();
})
.ClientEvents(events => events.OnLoad(
"onLoad"))
.DataBinding(dataBinding => dataBinding.Ajax().Enabled(
true).Select(
"_CustomBinding",
"Search",
new {
TableName = (
string)ViewData["Table"],
SearchString = ((
string)ViewData["SearchString"]),
Search = ViewData[
"Search"],
Srl = ViewData[
"srl"],
SearchType = ViewData[
"SearchType"],
OperatorType = Model.searchDefinition.OperatorForBasicSearch,
ParamCollection = (Model.ParameterData)
}))
.Pageable(paging => paging.Total((
int)ViewData["Total"]))
.Sortable(sorting => sorting
.SortMode(
GridSortMode.SingleColumn))
.Scrollable(c => c.Height(
"auto"))
.Reorderable(reorder => reorder.Columns(
true))
.Resizable(resizing => resizing.Columns(
true))
.Groupable()
.EnableCustomBinding(
true)
.ClientEvents(e => e.OnDataBound(
"onDataBound"))
)
The problem that I am facing is that when i try accessing the hidden colum value in the double click live event it is returning a message "undefined".
What could be wrong?
Regards,
Murali
