I have approve,reject and viewdetails button in my gridview.for approve there is confirmation box. when click on reject,i am disabling approve button. confiramtion box is opening even though button is disable.can any one tell me how to prevent it when button is disable.
function getConfirmation() {
var retVal = confirm("Are you sure you want to approve this record?");
if (retVal == true) {
return true;
}
else {
return false;
}
}
<asp:GridView ID="GridView1" Width="900px" runat="server" AllowPaging="True" AutoGenerateColumns="False"
BackColor="White" PageSize="10" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px"
CellPadding="3" OnRowDataBound="GridView1_RowDataBound" OnRowCommand="GridView1_RowCommand"
ShowHeaderWhenEmpty="True" EmptyDataText="No records Found">
<Columns>
<asp:TemplateField HeaderText="Reference Number" ItemStyle-Width="150">
<ItemTemplate>
<asp:Label runat="server" ID="lblref_number" Text='<%# Eval("ref_number") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Industrial Zone" ItemStyle-Width="150">
<ItemTemplate>
<asp:Label runat="server" ID="lblindzone" Text='<%# Eval("indzone") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="District" ItemStyle-Width="150">
<ItemTemplate>
<asp:Label runat="server" ID="lbldstr" Text='<%# Eval("dstr")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Industrial Area" ItemStyle-Width="150">
<ItemTemplate>
<asp:Label runat="server" ID="lblnmindar" Text='<%# Eval("nmindar")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Plot Number" ItemStyle-Width="150">
<ItemTemplate>
<asp:Label runat="server" ID="lblplno" Text='<%# Eval("plno")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Approve/Reject" ItemStyle-Width="150">
<ItemTemplate>
<asp:LinkButton ID="lnkApproved" runat="server" Text="Approve" OnClick="lnkApproved_Click"
OnClientClick="getConfirmation();"><img src="images/approve.png" style="width:20px;height:20px; margin:5px" title="Approve"/></asp:LinkButton>
<asp:LinkButton ID="lnkReject" runat="server" Text="Reject" CommandName="viewhide"><img src="images/reject.png" style="width:16px;height:16px; margin:5px" title="Reject"/></asp:LinkButton>
<asp:TextBox ID="txtcomment" runat="server" TextMode="MultiLine" placeholder="Enter your comments"></asp:TextBox>
<asp:Button ID="btnsubmit" runat="server" Text="Submit" OnClick="btnsubmit_Click" />
<asp:Button ID="btncancel" runat="server" Text="Cancel" OnClick="btncancel_Click" />
<asp:LinkButton ID="lnkviewdetails" runat="server" Text="View Details"><img src="images/viewdetails.png" style="width:20px;height:20px; margin:5px" title="Details" /></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Status" ItemStyle-Width="150">
<ItemTemplate>
<asp:Label runat="server" ID="lblstatus" Text='<%# Eval("status")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<FooterStyle BackColor="White" ForeColor="#000066" />
<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />
<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
<SortedAscendingCellStyle BackColor="#F1F1F1" />
<SortedAscendingHeaderStyle BackColor="#007DBB" />
<SortedDescendingCellStyle BackColor="#CAC9C9" />
<SortedDescendingHeaderStyle BackColor="#00547E" />
<RowStyle HorizontalAlign="center" ForeColor="#000066"></RowStyle>
</asp:GridView>
protected void lnkApproved_Click(object sender, EventArgs e)
{
string status = "approved";
string zone, district, industrialarea, plotnumber, comment = null, ref_number;
var lb = (LinkButton)sender;
var row = (GridViewRow)lb.NamingContainer;
var lblindzone = row.FindControl("lblindzone") as Label;
var lbldstr = row.FindControl("lbldstr") as Label;
var lblnmindar = row.FindControl("lblnmindar") as Label;
var lblplno = row.FindControl("lblplno") as Label;
var lblstatus = row.FindControl("lblstatus") as Label;
var lblref_num = row.FindControl("lblref_number") as Label;
//Get values
zone = lblindzone.Text;
district = lbldstr.Text;
industrialarea = lblnmindar.Text;
plotnumber = lblplno.Text;
ref_number = lblref_num.Text;
string plno = plotnumber;
DataTable dt2 = UserdetailsBAL.Getviewdetailsdata(zone, district, industrialarea, plno, ref_number);
string changed_data = dt2.Rows[0]["newdata"].ToString();
DataTable dt1 = UserdetailsBAL.updateapproverejectstatusbyuser(zone, district, industrialarea, plotnumber, status, comment, ref_number);
DataTable dt3 = UserdetailsBAL.getdo_emailfromref_number(ref_number);
string do_email = dt3.Rows[0]["email"].ToString();
Sendapprovedmail(do_email, secretary_email, industrialarea, plotnumber, changed_data);
lblstatus.Text = status;
lb.Enabled = false;
LinkButton lnkreject = (LinkButton)(row.FindControl("lnkReject"));
lnkreject.Enabled = false;
LinkButton lnkviewdetails = (LinkButton)(row.FindControl("lnkviewdetails"));
lnkviewdetails.Enabled = false;
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
LinkButton btnEdit = (LinkButton)e.Row.Cells[4].FindControl("lnkReject");
TextBox textbox = (TextBox)e.Row.Cells[4].FindControl("txtcomment");
Button btnsubmit = (Button)e.Row.Cells[4].FindControl("btnsubmit");
Button btncancel = (Button)e.Row.Cells[4].FindControl("btncancel");
textbox.Visible = false;
btnsubmit.Visible = false;
btncancel.Visible = false;
}
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "viewhide")
{
GridViewRow gvr = (GridViewRow)(((LinkButton)e.CommandSource).NamingContainer);
TextBox tbComments = ((TextBox)gvr.FindControl("txtcomment"));
Button btnsumbit = ((Button)gvr.FindControl("btnsubmit"));
Button btncancel = ((Button)gvr.FindControl("btncancel"));
LinkButton lnkapprove = (LinkButton)(gvr.FindControl("lnkApproved"));
LinkButton lnkreject = (LinkButton)(gvr.FindControl("lnkReject"));
lnkapprove.Enabled = false;
lnkreject.Enabled = false;
tbComments.Visible = true;
btnsumbit.Visible = true;
btncancel.Visible = true;
}
}
protected void btnsubmit_Click(object sender, EventArgs e)
{
string status = "rejected";
string zone, district, industrialarea, plotnumber, comment, ref_number;
var lb = (Button)sender;
var row = (GridViewRow)lb.NamingContainer;
Button btncancel = ((Button)row.FindControl("btncancel"));
//TextBox textbox = row.FindControl("txtcomment") as TextBox;
//textbox.Visible = true;
var lblindzone = row.FindControl("lblindzone") as Label;
var lbldstr = row.FindControl("lbldstr") as Label;
var lblnmindar = row.FindControl("lblnmindar") as Label;
var lblplno = row.FindControl("lblplno") as Label;
var lblstatus = row.FindControl("lblstatus") as Label;
var lblcomment = row.FindControl("txtcomment") as TextBox;
var lblref_num = row.FindControl("lblref_number") as Label;
//Get values
zone = lblindzone.Text;
district = lbldstr.Text;
industrialarea = lblnmindar.Text;
plotnumber = lblplno.Text;
comment = lblcomment.Text;
ref_number = lblref_num.Text;
DataTable dt1 = UserdetailsBAL.updateapproverejectstatusbyuser(zone, district, industrialarea, plotnumber, status, comment, ref_number);
DataTable dt2 = UserdetailsBAL.getdo_emailfromref_number(ref_number);
string do_email = dt2.Rows[0]["email"].ToString();
Sendrejectmail(do_email, secretary_email, industrialarea, plotnumber, comment);
lblstatus.Text = status;
lb.Enabled = false;
LinkButton lnkapprove = (LinkButton)(row.FindControl("lnkApproved"));
LinkButton lnkreject = (LinkButton)(row.FindControl("lnkReject"));
LinkButton lnkviewdetails = (LinkButton)(row.FindControl("lnkviewdetails"));
lnkapprove.Enabled = false;
lnkreject.Enabled = false;
lblcomment.Visible = false;
lb.Visible = false;
btncancel.Visible = false;
lnkviewdetails.Enabled = false;
}
protected void btncancel_Click(object sender, EventArgs e)
{
var lb = (Button)sender;
var gvr = (GridViewRow)lb.NamingContainer;
TextBox tbComments = ((TextBox)gvr.FindControl("txtcomment"));
Button btnsumbit = ((Button)gvr.FindControl("btnsubmit"));
Button btncancel = ((Button)gvr.FindControl("btncancel"));
LinkButton lnkapprove = (LinkButton)(gvr.FindControl("lnkApproved"));
LinkButton lnkreject = (LinkButton)(gvr.FindControl("lnkReject"));
tbComments.Visible = false;
btnsumbit.Visible = false;
btncancel.Visible = false;
lnkapprove.Enabled = true;
lnkreject.Enabled = true;
}