The scenario is like this: I have an asp.net GridView control and a save button. Initially I am making the save button disabled on page load. I want to enable the save button when any of the drop downs inside the gridview is changed. It's working fine until now.
I have one javascript function to throw a warning message to ask user if he wants to continue saving, but this function is not firing through the save button.
If I delete the function from the drop down list to enable the save button, then save button calls the onclientclick function. Otherwise, it doesn't.
Below is the code.
<script type="text/javascript">
function Confirm() {
if (confirm("Are you sure," + " you want to assign the respective factories ?") == true)
return true;
else
return false;
}
function Success() {
alert('Data has been saved successfully.');
}
function EnableSave() {
$('#btnSave').prop("disabled", false);
}
}
</script>
<asp:GridView ID="gvReceiptTrans"
runat="server"
AutoGenerateColumns="false"
CssClass="mGrid"
PagerStyle-CssClass="pgr"
AlternatingRowStyle-CssClass="alt"
OnRowDataBound="grid_RowDataBound"
EmptyDataText="No Data Available">
<Columns>
<asp:BoundField HeaderText="RAN" HeaderStyle-CssClass="mGridHeaderStyle" ItemStyle-Width="80px" ItemStyle-HorizontalAlign="Center" DataField="receipt_ack_nbr" />
<asp:BoundField HeaderText="IPN" HeaderStyle-CssClass="mGridHeaderStyle" ItemStyle-Width="100px" ItemStyle-HorizontalAlign="Center" DataField="item_id" />
<asp:BoundField HeaderText="PO" HeaderStyle-CssClass="mGridHeaderStyle" ItemStyle-Width="100px" ItemStyle-HorizontalAlign="Center" DataField="po_nbr" />
<asp:BoundField HeaderText="PO Line" HeaderStyle-CssClass="mGridHeaderStyle" ItemStyle-Width="80px" ItemStyle-HorizontalAlign="Center" DataField="po_line_nbr" />
<asp:BoundField HeaderText="Supplier" HeaderStyle-CssClass="mGridHeaderStyle" ItemStyle-Width="300px" ItemStyle-HorizontalAlign="Center" DataField="supplier" />
<asp:BoundField HeaderText="Model" HeaderStyle-CssClass="mGridHeaderStyle" ItemStyle-Width="100px" ItemStyle-HorizontalAlign="Center" DataField="model" />
<asp:BoundField HeaderText="Description" HeaderStyle-CssClass="mGridHeaderStyle" ItemStyle-Width="300px" ItemStyle-HorizontalAlign="Center" DataField="description" />
<asp:BoundField HeaderText="Qty Delivered" HeaderStyle-CssClass="mGridHeaderStyle" ItemStyle-Width="110px" ItemStyle-HorizontalAlign="Center" DataField="qty" />
<asp:TemplateField HeaderText="Factory" HeaderStyle-CssClass="mGridHeaderStyle" ItemStyle-Width="120px">
<ItemTemplate>
<asp:DropDownList ID="ddlFactory" runat="server" Width="120px" onchange="return EnableSave();" CssClass="items" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:Button ID="btnSave" runat="server" Text="Save" Width="120px" Height="30px" OnClientClick="return Confirm();" OnClick="btnSave_Click" />
The requirement is to call the onclientclick() function on clicking the save button first, then it should go for main click event.
How do I fix this?