本文介绍了MVC剃刀的WebGrid获取按钮来选择行提交的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何获得的WebGrid所选行到隐参量。
How can i get WebGrid Selected Row into Hidden Variable.
我用下面的code。
@{
var grid = new WebGrid(@ViewBag.ImageFiles, canPage: false, rowsPerPage: 5, selectionFieldName: "SelectedRow", ajaxUpdateContainerId: "gridImages");
}
<div id="gridContent">
@grid.GetHtml(tableStyle: "webGrid",
htmlAttributes: new { id = "gridImages" },
headerStyle: "header",
displayHeader: true,
alternatingRowStyle: "alt",
selectedRowStyle: "select",
columns: grid.Columns(
grid.Column("Select", format: (item) => item.GetSelectLink("Select")),
grid.Column("File", "Image")))
</div>
<input type="button" value="Submit" onclick="javascript getSelectedRow();"/>
@{
System.Dynamic.ExpandoObject expobject = null;
if (grid.HasSelection)
{
expobject = (System.Dynamic.ExpandoObject)grid.SelectedRow.Value;
<input type="hidden" id="hdnSelectedRow" name="hdnSelectedRow" value="@(expobject == null ? "" : expobject.FirstOrDefault().Value.ToString())" />
}
}
下面我绑定的DataTable从以下code到的WebGrid
Here i am binding Datatable to Webgrid from the following code
foreach (DataRow row in imageFiles.Rows)
{
var obj = (IDictionary<string, object>)new ExpandoObject();
foreach (DataColumn col in imageFiles.Columns)
{
obj.Add(col.ColumnName, row[col.ColumnName]);
}
result.Add(obj);
}
ViewBag.ImageFiles = result;
当我点击提交按钮,我没有得到隐藏的变量和值在JavaScript中。
When i click on submit button i am not getting hidden variable and value in javascript.
推荐答案
我找到解决方案,使选中的行。
I find the solution to get selected row.
以下是code。
@{
var grid = new WebGrid(@ViewBag.ImageFiles, selectionFieldName: "SelectedRow");
}
<div id="gridImages">
@grid.GetHtml(tableStyle: "webGrid",
headerStyle: "header",
displayHeader: true,
alternatingRowStyle: "alt",
selectedRowStyle: "select",
mode: WebGridPagerModes.All,
columns: grid.Columns(
grid.Column("Select", format: @<text>@Html.RadioButton("rbFile", "", false) </text>),
grid.Column("File", "File", format: @<text>@item.File</text>)))
</div>
在按钮的JavaScript点击我用下面的code得到选行
In the javascript on button click i am using the following code to get selected row
var selectedValue = "";
var isSelected = false;
$('#gridImages table tr').each(function () {
if ($(this).find("input[id*='rbFile']").length > 0) {
if ($(this).find("input[id*='rbFile']")[0].checked == true) {
isSelected = true;
selectedValue = $(this)[0].innerText;
}
}
});
if (isSelected == true) {
$(this).dialog("close");
txtBg = document.getElementById("txtBg");
txtBg.value = selectedValue;
}
else {
alert("Please select atleast one file.");
}
这篇关于MVC剃刀的WebGrid获取按钮来选择行提交的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!