У меня есть GridView, как следует
`<asp:GridView ID="gvSearchAll" runat="server" AutoGenerateColumns="False"
OnPageIndexChanging="searchAll_PageIndexChanging"
onrowdatabound="OnRowDataBound">
<Columns>
<asp:BoundField DataField="A" HeaderText="A"/>
<asp:BoundField DataField="B" HeaderText="B"/>
<asp:BoundField DataField="C" HeaderText="C" />
<asp:TemplateField HeaderText="Select">
<ItemTemplate>
<asp:CheckBox ID="RowSelector" runat="server" onclick="checkRadioBtn(this);" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>`
OnRowDataBound на CodeBehind, у меня есть следующее:
protected void OnRowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Cells[3].Attributes.Add("onclick", string.Format("DisplayDetails('{0}');", e.Row.RowIndex + 1));
e.Row.Attributes["onmouseover"] = "onMouseOver('" + (e.Row.RowIndex + 1) + "')";
e.Row.Attributes["onmouseout"] = "onMouseOut('" + (e.Row.RowIndex + 1) + "')";
}
}
Теперь то, что я на самом деле хотел, была функция DisplayDetails для запуска, когдафлажок отмечен.
function DisplayDetails(row) {
var gridView = document.getElementById('gvSearchAll');
document.getElementById("A").value = gridView.rows[row].cells[1].innerText;
document.getElementById("B").value = gridView.rows[row].cells[0].innerText;
}
Что я хотел сделать, так это то, что когда флажок установлен, я хочу заполнить столбцы A и B строки конкретного флажка данными до некоторого текстового поля.
Функция onClick, checkRadioBtn (this), делает что-то еще.
Теперь, в настоящее время, я выполняю функцию Показать подробности всякий раз, когда щелкаю по всей ячейке CheckBox.Мне нужно выполнить функцию DisplayDetails в функции checkRadioBtn (this), но для этого мне нужно что-то вроде (this.row_index), которое я не могу понять, как это сделать.
Пожалуйста, помогите.