gridview's textbox validation using javascript?
-
Dear All, I have a gridview where first 2 columns are bound fields. Next 3 columns have template fields with textboxes which are requiered to be filled by user. i want if user does not provide any value, should be informed then and there through javascript. I have written one which displays message but focus moves to next field. I have given my code below. Please help me. Thanks; ----------------------------- var gridViewCtlId = '<%=gridview1.ClientID%>'; var gridViewCtl = null; var curSelRow = null; var curRowIdx = -1; function getGridViewControl() { if (null == gridViewCtl) { gridViewCtl = document.getElementById(gridViewCtlId); } } function onGridViewRowSelected(rowIdx) { var selRow = getSelectedRow(rowIdx); if (null != selRow) { curSelRow = selRow; var cellValue = getCellValue(rowIdx, 0); alert(cellValue); } } function getSelectedRow(rowIdx) { return getGridRow(rowIdx); } function getGridRow(rowIdx) { getGridViewControl(); if (null != gridViewCtl) { return gridViewCtl.rows[rowIdx]; } return null; } function getGridColumn(rowIdx, colIdx) { var gridRow = getGridRow(rowIdx); if (null != gridRow) { return gridRow.cells[colIdx]; } return null; } function getCellValue(rowIdx, colIdx) { var gridCell = getGridColumn(rowIdx, colIdx); switch(gridCell.childNodes.item(0).value) { case "": gridCell.childNodes.item(0).focus(); alert("Please enter the value"); break; return false; default: return true; } } -------------------------------- Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load If Not Page.IsPostBack Then LoadGridData() End If For Each row As GridViewRow In GridView1.Rows rowIndex = rowIndex + 1 For ctr = 0 To 4 CType(row.FindControl("Textbox" + (ctr + 1).ToString), TextBox).Attributes("onblur") = "javascript: return getCellValue(" + rowIndex.ToString() + "," + ctr.ToString() + ")" Next Next End Sub
sanjay kumar samantaray
-
Dear All, I have a gridview where first 2 columns are bound fields. Next 3 columns have template fields with textboxes which are requiered to be filled by user. i want if user does not provide any value, should be informed then and there through javascript. I have written one which displays message but focus moves to next field. I have given my code below. Please help me. Thanks; ----------------------------- var gridViewCtlId = '<%=gridview1.ClientID%>'; var gridViewCtl = null; var curSelRow = null; var curRowIdx = -1; function getGridViewControl() { if (null == gridViewCtl) { gridViewCtl = document.getElementById(gridViewCtlId); } } function onGridViewRowSelected(rowIdx) { var selRow = getSelectedRow(rowIdx); if (null != selRow) { curSelRow = selRow; var cellValue = getCellValue(rowIdx, 0); alert(cellValue); } } function getSelectedRow(rowIdx) { return getGridRow(rowIdx); } function getGridRow(rowIdx) { getGridViewControl(); if (null != gridViewCtl) { return gridViewCtl.rows[rowIdx]; } return null; } function getGridColumn(rowIdx, colIdx) { var gridRow = getGridRow(rowIdx); if (null != gridRow) { return gridRow.cells[colIdx]; } return null; } function getCellValue(rowIdx, colIdx) { var gridCell = getGridColumn(rowIdx, colIdx); switch(gridCell.childNodes.item(0).value) { case "": gridCell.childNodes.item(0).focus(); alert("Please enter the value"); break; return false; default: return true; } } -------------------------------- Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load If Not Page.IsPostBack Then LoadGridData() End If For Each row As GridViewRow In GridView1.Rows rowIndex = rowIndex + 1 For ctr = 0 To 4 CType(row.FindControl("Textbox" + (ctr + 1).ToString), TextBox).Attributes("onblur") = "javascript: return getCellValue(" + rowIndex.ToString() + "," + ctr.ToString() + ")" Next Next End Sub
sanjay kumar samantaray
Validate Textboxes values on RowDataBound Event of Gridview. Try this code OnRowDataBound Event:-
((TextBox)e.Row.FindControl("Textbox)).Attributes.Add("onblur","return Validate("+((TextBox)e.Row.FindControl("Textbox)).ClientID+");");
Javascript Function:-Validate(txtID) { if(document.GetElementByID(txtID).value=="") { alert('Please Eneter Value.');return false; } else { return true; } }
Best Regard Pathan---------------------------------------------------