i want to enabled the edit button when i select any records for editing from grid .on page load edit button should be disabled.if i put new entry in textboxes save button should get enabled and edit button get disabled.please find the code given below.
<%@ Page Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="HomePage.aspx.cs"
Inherits="QC.UI.WEB.QCApplication.HomePage" %>
<asp:Content ID="Content" ContentPlaceHolderID="MainContent" runat="server">
<table class="style1">
<tr>
<td class="style2">
ID:
</td>
<td>
<asp:Label ID="idLabel" runat="server"></asp:Label>
</td>
</tr>
<tr>
<td class="style2">
FirstName:
</td>
<td class="style3">
<input type="text" id="firstNameTextBox" />
</td>
</tr>
<tr>
<td class="style2">
LastName :
</td>
<td class="style3">
<input type="text" id="lastNameTextBox" />
</td>
</tr>
<tr>
<td class="style2">
NetworkId :
</td>
<td class="style3">
<input type="text" id="networkIdTextBox" />
</td>
</tr>
<tr>
<td class="style2">
Role :
</td>
<td class="style3">
<select id="roleDropDown">
<%----%>
<option value="***Select***">***Select***</option>
<option value="Qc User">Qc User</option>
<option value="Qc Manager">Qc Manager</option>
<option value="SeniorManager">SeniorManager</option>
</select>
</td>
</tr>
<tr>
<td class="style2">
Admin :
</td>
<td class="style3">
<label id="adminChkbox">
<input name="MyCheckBox" type="checkbox" value="1" /></label>
</td>
</tr>
</table>
<%----%>
<input type="button" id="saveClickButton" value="Save" onclick="return saveClickButton_onclick()" />
<%----%>
<input type="button" id="editButton" value="Edit"/>
<input type="button" id="cancelButton" value="Cancel" onclick="return cancelButton_onclick()" />
<%----%>
<div class="row-fluid">
<div id="userGrid" style="width: 100%; height: 300px;">
</div>
<div id="appPager" style="width: 100%; height: 5px;">
</div>
</div>
<script>
var userEntity;
var usersList;
$(function () {
try {
manageOverlay(true);
debugger;
usersList = JSON.parse('<%=UsersList %>');
populateUserGrid();
forButtonEnabledDisabled();
setButtonEvents();
$('#roleDropDown').select2();
$.ajaxSetup({
async: false
});
} catch (exception) {
manageOverlay(false);
alert(exception);
}
});
function validateValue() {
debugger;
var regexpName = /^[A-Za-z][^\s]*$/;
if (!regexpName.test(this.$('#firstNameTextBox').val())) {
alert("Textbox value not be numbers and cannot be blank");
return false;
}
var regexpLastName = /^[A-Za-z][^\s]*$/;
if (!regexpLastName.test($('#lastNameTextBox').val())) {
alert("Textbox value not be numbers and cannot be blank");
return false;
}
var regexpNetworkID = /^[A-Za-z0-9]*$/;
if (!regexpNetworkID.test($('#networkIdTextBox').val())) {
alert("Textbox value must be alphanumeric and textbox not be empty");
return false;
}
var roleDropDownList = $('#roleDropDown').val();
if ($('#roleDropDown').val() < 1) {
alert('select the Role');
return false;
}
return true;
}
function setButtonEvents() {
debugger;
$('#saveClickButton').click(function () {
debugger;
try {
manageOverlay(true);
selectedRow = null;
if (validateValue() == true) {
saveUser();
}
}
catch (exception) {
manageOverlay(false);
alert(exception);
}
});
$('#editButton').click(function () {
debugger;
if (!$('input[type="radio"][name="userMasterRadio"]:checked').val()) {
alert("Please select the Records for edit");
return false;
}
setFieldValues();
});
}
function saveUser() {
debugger;
var userEntity = setUserEntity();
userEntity = JSON.stringify(userEntity);
$.ajax({
url: 'HomePage.aspx/SaveUser',
type: 'POST',
contentType: 'application/json; charset=utf-8',
dataType: "json",
data: '{"user":' + userEntity + '}',
success: function (result) {
debugger;
if (result.d != '') {
alert('Failed to save user.');
manageOverlay(false);
}
},
error: function (error) {
debugger;
manageOverlay(false);
alert(error.responseText);
},
async: false
});
}
function setUserEntity() {
debugger;
if ($('#firstNameTextBox').val() != '') {
userEntity.FirstName = $('#firstNameTextBox').val();
}
if ($('#lastNameTextBox').val() != '') {
userEntity.LastName = $('#lastNameTextBox').val();
}
if ($('#networkIdTextBox').val() != '') {
userEntity.NetworkId = $('#networkIdTextBox').val();
}
if ($('#roleDropDown').val() != '') {
userEntity.Role = $('#roleDropDown').val();
}
return userEntity;
}
var userColumn;
var appDataView;
function populateUserGrid() {
debugger;
var sortDir;
var sortCol = 'FirstName';
userGrid;
debugger;
var columns = [
{ id: "userMasterRadioSelection", name: "", field: "Id", formatter:radioFormatter },
{id: "firstName", name: "First Name", field: "FirstName", sortable: true },
{ id: "lastName", name: "Last Name", field: "LastName" },
{ id: "networkId", name: "Network Id", field: "NetworkId" },
{ id: "roleDropDown", name: "Role", field: "Role" },
{ id: "id", name: "", field: "Id", width: 0, minWidth: 0, maxWidth: 0, resizable: false, sortable: false, formatter: idformatter}];
var options = {
enableCellNavigations: true,
enableColumnRecorder: false,
enableAddRow: false,
asyncEditorLoading: false,
dataItemColumnValueExtractor: compositeDataItemColumnValueExtractor,
autoEdit: false
};
var dataView = new Slick.Data.DataView();
userGrid = new Slick.Grid("#userGrid", dataView, columns, options);
userGrid.setSelectionModel(new Slick.RowSelectionModel());
var columnpicker = new Slick.Controls.ColumnPicker(columns, userGrid, options);
userGrid.onSort.subscribe(function (e, args) {
sortDir = args.sortAsc ? 1 : -1;
sortCol = args.sortCol.field;
if ($.browser.msie && $.browser.version <= 8) {
dataView.fastSort(sortCol, args.sortAsc);
}
else {
dataView.sort(function (a, b) {
var x = a[sortCol], y = b[sortCol];
return (x == y ? 0 : (x > y ? 1 : -1));
}, args.sortAsc);
}
});
dataView.onRowCountChanged.subscribe(function (e, args) {
userGrid.updateRow(args.rows);
userGrid.render();
});
dataView.onRowsChanged.subscribe(function (e, args) {
userGrid.invalidateRows(args.rows);
userGrid.render();
});
dataView.beginUpdate();
dataView.setItems(usersList, 'Id');
dataView.endUpdate();
$("#gridContainer").resizable();
}
function radioFormatter(row, cell, val, columnDef, dataContext) {
debugger;
if (dataContext) {
return '<input type="radio" name="userMasterRadio" value="' + val + '"/>';
}
return null;
}
function setFieldValues() {
debugger;
var Userid = $('input[type="radio"][name="userMasterRadio"]:checked').val();
userEntity = $.grep(usersList, function (item) {
return item.Id.toString() == Userid;
})[0];
$('#firstNameTextBox').val(userEntity.FirstName);
$('#lastNameTextBox').val(userEntity.LastName);
$('#networkIdTextBox').val(userEntity.NetworkId);
$("#roleDropDown [value='" + userEntity.Role + "']").attr("selected", "selected");
$("#roleDropDown").select2();
};
function forButtonEnabledDisabled() {
if ($('input[type="radio"][name="userMasterRadio"]:checked').val()) {
$('#editButton').attr("disabled", false);
}
else {
$('#editButton').attr("disabled", true);
}
}
</script>
</asp:Content>
Thanks
Harshal Raut