this is code below that doesnt work, i try work with seperate solution with same database but this problem seems hard to solve. thanks in advance
<div class="section-title">
<h2>Register <span>Now</span></h2>
<p>Ut possimus qui ut temporibus culpa velit eveniet modi omnis est adipisci expedita at voluptas atque vitae autem.</p>
</div>
<div class="php-email-form">
<div class="row">
<div class="col-lg-4 col-md-6 form-group">
<asp:TextBox ID="TextBox1" runat="server" type="text" class="form-control" placeholder="Your ID Number" data-rule="minlen:8" data-msg="Please enter at least 8 chars" ></asp:TextBox>
<div class="validate"></div>
</div>
<div class="col-lg-4 col-md-6 form-group mt-3 mt-md-0">
<asp:TextBox ID="TextBox2" runat="server" type="text" class="form-control" placeholder="Username" data-rule="minlen:4" data-msg="Please enter at least 4 chars" required="required"></asp:TextBox>
<div class="validate"></div>
</div>
<div class="col-lg-4 col-md-6 form-group mt-3">
<asp:TextBox ID="TextBox3" runat="server" type="password" class="form-control" placeholder="Password" data-rule="minlen:4" data-msg="Please enter at least 4 chars" required="required" ></asp:TextBox>
<div class="validate"></div>
</div>
<div class="col-lg-4 col-md-6 form-group mt-3 mt-md-0">
<asp:TextBox ID="TextBox4" runat="server" type="email" class="form-control" placeholder="Your Email" data-rule="email" data-msg="Please enter a valid email"></asp:TextBox>
<div class="validate"></div>
</div>
<div class="col-lg-4 col-md-6 form-group mt-3 mt-md-0">
<p>Register As</p>
<asp:DropDownList ID="DropDownList1" runat="server" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged" Height="50px" Width="329px" Font-Size="Medium" Font-Names="Arial" Font-Italic="True">
<asp:ListItem></asp:ListItem>
<asp:ListItem>Employee</asp:ListItem>
<asp:ListItem>Customer</asp:ListItem>
</asp:DropDownList>
<div class="validate"></div>
</div>
</div>
<div class="form-group mt-3">
<asp:TextBox ID="TextBox7" runat="server" class="form-control" rows="5" placeholder="Address" Width="1119px"></asp:TextBox>
<div class="validate"></div>
</div>
<asp:Button ID="Button3" runat="server" OnClick="Button1_Click" Text="Register" />
<div class="text-center">
</div>
</div>
</div>
</section>**strong text**
but this code below work, idk what the problem, its just same code with/without design
<div>
<div style="font-size:x-large; text-align:center">Register</div>
<table class="nav-justified">
<tr>
<td class="modal-sm" style="width: 290px">ID</td>
<td>
<asp:TextBox ID="TextBox1" runat="server" Width="243px"></asp:TextBox>
</td>
<td> </td>
</tr>
<tr>
<td class="modal-sm" style="width: 290px">Username</td>
<td>
<asp:TextBox ID="TextBox2" runat="server" Width="243px"></asp:TextBox>
</td>
<td> </td>
</tr>
<tr>
<td class="modal-sm" style="width: 290px">Password</td>
<td>
<asp:TextBox ID="TextBox3" runat="server" Width="243px"></asp:TextBox>
</td>
<td> </td>
</tr>
<tr>
<td class="modal-sm" style="width: 290px">Email</td>
<td>
<asp:TextBox ID="TextBox4" runat="server" Width="243px"></asp:TextBox>
</td>
<td> </td>
</tr>
<tr>
<td class="modal-sm" style="width: 290px">Register as:</td>
<td>
<asp:DropDownList ID="DropDownList1" runat="server">
<asp:ListItem></asp:ListItem>
<asp:ListItem>Employee</asp:ListItem>
<asp:ListItem>Customer</asp:ListItem>
</asp:DropDownList>
</td>
<td> </td>
</tr>
<tr>
<td class="modal-sm" style="width: 290px">Address</td>
<td>
<asp:TextBox ID="TextBox7" runat="server" Width="243px"></asp:TextBox>
</td>
<td> </td>
</tr>
<tr>
<td class="modal-sm" style="width: 290px"> </td>
<td>
<asp:Button ID="Button1" runat="server" BackColor="#CCCC00" BorderColor="#FF3300" Font-Bold="True" ForeColor="#FF9900" OnClick="Button1_Click" Text="Register" />
</td>
<td> </td>
</tr>
</table>
<br />
Log In
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<br />
<br />
</div>
and these both codes share same aspx.cs buttons click function but it still doesnt fire and idk know why, i keep writing this because i cant submit questions otherwise
I think it's because of this line of code:
<div class="validate"></div>
Try to avoid validation by changing CausesValidation attribute to false in the button element:
CausesValidation="false"
Related
I'm trying to fit a GridView (or a ListView, I've tried both) into the panel-body of a div panel. However, whenever the GridView appears, it closes out the panel-body early and causes formatting issues.
I've tried GridView, ListView, rearranging the elements of my panel, and I've trimmed a lot of stuff back to get it down to just the GridView.
<asp:ListView ID="lvOuter" runat="server" ItemPlaceholderID="placeHolder" DataKeyNames="PkUser" OnItemCommand="lvOuter_ItemCommand" OnSorting="lvOuter_Sorting" OnSelectedIndexChanging="lvOuter_SelectedIndexChanging" OnPagePropertiesChanging="lvOuter_PagePropertiesChanging">
<LayoutTemplate>
<table style="border-collapse: collapse; width: 100%">
<tbody>
<tr id="placeHolder" runat="server" style="width: 100%"></tr>
</tbody>
<tfoot>
<tr style="align-content: center;">
<td class="listViewFooterText" style="color: white; text-align: center">
<uc:listviewpager runat="server" id="ucOuterListViewPager" listviewcontrolid="lvOuter" />
</td>
</tr>
</tfoot>
</table>
</LayoutTemplate>
<ItemTemplate>
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">
<span class="glyphicon glyphicon-user x1" style="text-align: left;" />
<b>
<asp:Label ID="lbEmployeeTitle" runat="server" Style="font-family: Arial; font-size: 14px;" Text='<%# Eval("EmployeeName") %>'></asp:Label></b>
<asp:Label ID="lbUnapprovedTitle" runat="server" CssClass="badge badge-blue" Text='<%# Eval("TotUnapproved") %>'></asp:Label>
</h3>
</div>
<div class="panel-body">
<asp:GridView ID="gvInner" runat="server" DataSource='<%# Eval("IndividualTracking") %>' AutoGenerateColumns="false" DataKeyNames="PkTrainingRequest" OnRowCommand="gvInner_RowCommand">
<Columns>
<asp:TemplateField ItemStyle-Width="40%" HeaderText="Title">
<ItemTemplate>
<asp:LinkButton ID="kbTitle" runat="server" CssClass="gridViewRowText" CommandName="Populate" ToolTip="Go to Training Request" Text='<%# Eval("Title") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="20%" HeaderText="Length">
<ItemTemplate>
<asp:LinkButton ID="kbLength" runat="server" CssClass="gridViewRowText" CommandName="Populate" ToolTip="Go to Training Request" Text='<%#Eval("Length") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="30%" HeaderText="Date">
<ItemTemplate>
<asp:LinkButton ID="kbDate" runat="server" CssClass="gridViewRowText" CommandName="Populate" ToolTip="Go to Training Request" Text='<%#Eval("Date") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="10%" HeaderText="Approve">
<ItemTemplate>
<asp:Button ID="btnQuickApprove" runat="server" Text="Quick Approve" CssClass="btn btn-success" CommandName="Approve" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
<div class="panel-footer">
<div class="row">
<div class="col-md-2"></div>
<div class="col-md-2">
<asp:Button ID="btnDrillDown" Text='<%#Eval("Subordinates") %>' CommandName="DrillDown" CssClass="btn btn-primary" runat="server" Visible='<%#Eval("VisibleSubordinates") %>' />
</div>
<div class="col-md-2">
</div>
<div class="col-md-2">
<asp:Button ID="btnViewTraining" Text="View All Training" CommandName="ViewTraining" CssClass="btn btn-primary" runat="server" />
</div>
<div class="col-md-4"></div>
</div>
</div>
</div>
</ItemTemplate>
</asp:ListView>
Expected result: panels, each with a header and footer, and a gridview (when it populates) in the body.
Actual result: the panels work fine until the gridview populates. When that happens, the panel-body ends before the gridview, and the panel-footer attaches to the top of the next panel.
You made a tr the placeHolder. So it generates this, which is incorrect html
<table style="border-collapse: collapse; width: 100%">
<tbody>
<div class="panel panel-default">
xxx
</div>
So if you want to use a correct table, make the LayoutTemplate like this
<asp:ListView ID="lvOuter" runat="server" ItemPlaceholderID="placeHolder">
<LayoutTemplate>
<table style="border-collapse: collapse; width: 100%">
<tbody>
<tr>
<td>
<span id="placeHolder" runat="server"></span>
</td>
</tr>
</tbody>
</table>
</LayoutTemplate>
<ItemTemplate>
<div class="panel panel-default">
</div>
</ItemTemplate>
</asp:ListView>
Which generates
<table>
<tbody>
<tr>
<td>
<div class="panel panel-default">
</div>
<div class="panel panel-default">
</div>
</td>
</tr>
</tbody>
</table>
This still places everything in a single table cell. If you want a cell per ItemTemplate you need to put <tr><td> in it.
I need to stop the page refreshing when user select Sample Id from the Dropbox. Because I am using the collapse Bootstrap function I don't want to user to click on the link (Click Here to Update Sample) every time a new sample ID is selected to view the result of the query. Please see image below
PS: The SQL code works. Thanks
HTML Code
<div class ="container">
<asp:HyperLink ID="UpdateSample" runat="server" Enabled="False" Visible="False" href="#UpdateSampleForm" data-toggle="collapse" CssClass="auto-style47">Click Here to Update Sample</asp:HyperLink>
<div id="UpdateSampleForm" class="collapse">
<div class="auto-style110">
<div>
<span class="auto-style98"><strong><span class="auto-style114">Select Sample ID </span></strong></span>
<asp:DropDownList ID="DropDownListUpdateSample" runat="server" Height="37px" Width="132px" CssClass="auto-style111" AutoPostBack = "true" OnSelectedIndexChanged="DropDownListUpdateSample_SelectedIndexChanged" AppendDataBoundItems="False" OnClientClick="return false;" >
</asp:DropDownList>
</div>
<table class="table table-condensed" style="width: 89%; font-size: smaller; height: 404px;">
<thead>
<tr class="auto-style54">
<th class="auto-style12">MBID *</th>
<th class="auto-style10">Sample ID*</th>
<th class="auto-style11">Sample Type * </th>
<th class="auto-style70">Sample Date</th>
<th class="auto-style75">Sample Trial</th>
<th class="auto-style12">First Sample Select</th>
<th class="auto-style12">Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td class="auto-style48">
<asp:TextBox class="form-control text-uppercase" ID="txtUpdateSample" runat="server" Height="29px" Width="145px" placeholde= "MBID" required="required" autofocus="autofocus" ReadOnly="True"></asp:TextBox>
</td>
<td class="auto-style49">
<asp:TextBox class="form-control text-uppercase" ID="txtUpdateSampleID" runat="server" Height="29px" Width="119px" placeholde= "Sample Type" required="required" autofocus="autofocus" ReadOnly="True"></asp:TextBox>
</td>
<td class="auto-style73">
<asp:TextBox class="form-control text-uppercase" ID="txtUpdateSampleType" runat="server" Height="29px" Width="119px" placeholde= "Sample Type" required="required" autofocus="autofocus"></asp:TextBox>
</td>
<td class="auto-style71">
<asp:TextBox class="form-control text-uppercase" ID="txtUpdateSampleDate" runat="server" Height="32px" Width="104px" placeholde= "dd/mm/yyyy" required="required" autofocus="autofocus"></asp:TextBox>
<asp:CompareValidator ID="CompareValidator9" runat="server" ControlToValidate="txtSampleDate" ErrorMessage="Invalid Date Format"
Type="Date" Operator="DataTypeCheck" Display="Dynamic"
Text="Invalid Date Format dd/MM/yyyy" ForeColor="Red" ValidationGroup="valGroup1">
</asp:CompareValidator>
</td>
<td class="auto-style76">
<asp:TextBox class="form-control text-uppercase" ID="txtUpdateSampleTrial" runat="server" Height="30px" Width="136px" placeholde= "Sample Trial Number" ></asp:TextBox>
</td>
<td class="auto-style49">
<asp:DropDownList ID="DropDownListUpdateFirstSample" runat="server" Height="34px" Width="146px" class="text-uppercase" CssClass="auto-style29">
<asp:ListItem></asp:ListItem>
<asp:ListItem Value="Yes" Text="Yes"></asp:ListItem>
<asp:ListItem Value="No" Text="No"></asp:ListItem>
</asp:DropDownList>
</td>
<tr>
<td class="auto-style5">
<asp:Button class="btn btn-lg btn-info btn-block" ID="btnUpdateSample" runat="server" Text="Update Sample" Height="41px" Width="161px" OnClick="btnAddSample_Click" UseSubmitBehavior="false" data-dismiss="modal" />
</td>
</tr>
</tbody>
</table>
</div>
</div>
You could do a Pause with using Javascript:
function pause() {
setTimeout(function () {
location.pause();
}, (60 * 1000));
}
After Sixty Seconds it reloads again. You can Increase this number so you could wait longer with reloading.
I am using bootstrap collapse in my project,in that collapse I have some buttons and dropdowns but when I click on any button or change dropdown index, postback occurs and collapse got uncollapsed,How can I stop this ?
Here is my Code
<h4>Search Training Profile<br />
</h4>
<div id="div_search" class="collapse" style="overflow-x: auto;">
<table class="table table-bordered table-striped">
<tr>
<td>Employee Name</td>
<td>
<asp:TextBox runat="server" ID="txt_name"></asp:TextBox>
<span class="err">optional</span>
</td>
<td>e.g First Name, Middle Name, Last Name</td>
</tr>
<tr>
<td>Designation</td>
<td><span class="err"></span>
<asp:DropDownList runat="server" ID="DDL_Desig" OnSelectedIndexChanged="DDL_Desig_SelectedIndexChanged" AutoPostBack="true">
</asp:DropDownList>
<span class="err">optional</span>
</td>
<td>
<asp:TextBox runat="server" ID="txt_desig" ReadOnly="true"></asp:TextBox>
<asp:Button Text="Clear" runat="server" />
</td>
</tr>
<tr>
<td>Location</td>
<td>
<asp:DropDownList runat="server" ID="DDL_Loc" OnSelectedIndexChanged="DDL_Loc_SelectedIndexChanged" AutoPostBack="true">
<asp:ListItem>Select</asp:ListItem>
</asp:DropDownList>
<span class="err">optional</span>
</td>
<td>
<asp:TextBox runat="server" ID="txt_loc" ReadOnly="true"></asp:TextBox>
<asp:Button Text="Clear" runat="server" />
</td>
</tr>
<tr>
<td>Division</td>
<td>
<asp:DropDownList runat="server" ID="DDL_Divis" OnSelectedIndexChanged="DDL_Divis_SelectedIndexChanged" AutoPostBack="true">
</asp:DropDownList>
<span class="err"> optional </span>
</td>
<td>
<asp:TextBox runat="server" ID="txt_divis" ReadOnly="true"></asp:TextBox>
<asp:Button Text="Clear" runat="server" />
</td>
</tr>
<tr>
<td>Department</td>
<td>
<asp:TextBox runat="server" ID="tx"></asp:TextBox>
<span class="err">optional</span></td>
<td>e.g ISD, MKT, HR etc</td>
</tr>
<tr>
<td>Filter By</td>
<td>
<asp:DropDownList runat="server" ID="DDL_Assc">
</asp:DropDownList>
</td>
<td>e.g OLP, SOLC, MAF, etc</td>
</tr>
<tr>
<td colspan="3"> </td>
</tr>
<tr>
<td colspan="3" style="text-align:center;">
<asp:Button Text="Search" runat="server" CssClass="btn" />
<asp:Button Text="Reset" runat="server" CssClass="btn" />
</td>
</tr>
</table>
</div>
Create public variable
string state = "collapse";
during the postback or dropdown changed set the value as
state = "expand";
and aspx page use this as below:-
<div id="div_search" class='<%= state %>' style="overflow-x: auto;">
Aditya's answer helped me initially and is a nice solution. As my code evolved wrapping the div inside an update panel and having the collapse div contain a couple calendar controls that cause postbacks to refresh data in a grid, I came up with another solution I thought worth sharing as it is handled server side only.
<asp:Panel ID="pnlDateRange" ClientIDMode="Static" runat="server" CssClass="collapse col-xs-12 col-sm-12 col-md-12 col-lg-12">
<div id="divFrom" class="col-xs-12 col-sm-12 col-md-2 col-md-offset-4 col-lg-2 col-lg-offset-4">
<asp:Calendar ID="cStartDate" runat="server" CssClass="calendar" Font-Size="X-Small"
DayNameFormat="FirstTwoLetters" DayHeaderStyle-Font-Bold="false"
TitleStyle-Font-Bold="true" TitleStyle-Font-Size="Small" Caption="From"
OnSelectionChanged="cStartDate_SelectionChanged">
<SelectedDayStyle Font-Bold="true" />
<OtherMonthDayStyle ForeColor="SlateGray" />
</asp:Calendar>
</div>
<div id="divTo" class="col-xs-12 col-sm-12 col-md-2 col-lg-2">
<asp:Calendar ID="cEndDate" runat="server" CssClass="calendar" Font-Size="X-Small"
DayNameFormat="FirstTwoLetters" DayHeaderStyle-Font-Bold="false"
TitleStyle-Font-Bold="true" TitleStyle-Font-Size="Small" Caption="To"
OnSelectionChanged="cEndDate_SelectionChanged">
<SelectedDayStyle Font-Bold="true" />
<OtherMonthDayStyle ForeColor="SlateGray" />
</asp:Calendar>
</div>
</asp:Panel>
The control was originally an ordinary with the same classes applied, it is the collapse target. In the c# on server side I have defined a private boolean variable set to true in all cases when the code loads to run. In the OnPreRender event I do this:
if (_collapseRange)
{
pnlDateRange.CssClass = pnlDateRange.CssClass.Replace("collapse in", "collapse");
}
else
{
if (!pnlDateRange.CssClass.Contains("collapse in"))
{
pnlDateRange.CssClass = pnlDateRange.CssClass.Replace("collapse", "collapse in");
}
}
I know it's an old question, but i did it this way.
Maybe not the best way, but it works for me.
Just call the method when ever you need it.
It gets a bit messy when you got a lot to collapse.
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
GetTextForInfoboxFrontPage();
multiCollapseExample1.Attributes["class"] = "collapse";
annualCollapse.Attributes["class"] = "collapse";
infoBox.Attributes["class"] = "collapse";
}
}
private void CollapseAllButAnnual()
{
annualCollapse.Attributes["class"] = "collapse in";
infoBox.Attributes["class"] = "collapse";
logoUpload.Attributes["class"] = "collapse";
}
I have a repeater which has two columns one column contains label and another has textbox.
on enter data in the text box it should show as label and another textbox in the same row should appear.i am getting a text box but not able to do as said above.Please help me.
<asp:Repeater ID="RepDetails" runat="server" OnItemDataBound="RepDetails_ItemDataBound" >
<HeaderTemplate>
<table style="border: 0px solid #df5015; width: 100%">
<tr style="background-color: White; color: White">
<td colspan="2">
<b>Atrributes</b>
</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr style="background-color: #EBEFF0; height: 50px;" >
<td >
<table style="background-color: #EBEFF0; border: 0px dotted #df5015; width: 100%; margin-bottom: 30px;">
<tr style="height: 20px;">
<td style="width: 30%">
<asp:Label ID="lblAttributeName" runat="server" Text='<%#Eval("AttirbuteName") %>' Font-Bold="true" /></td>
<td id="textboxId" style="width: 70%">
<asp:TextBox ID="txtAttributeNameDef" runat="server" ToolTip='<%#Eval("AttirbuteDefination") %>' Width="100%"></asp:TextBox>
</td>
</tr>
</table>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
You can do using repeater like this way DEMO
<div class="detailBox">
<div class="titleBox">
<label>Comment Box</label>
<button type="button" class="close" aria-hidden="true">×</button>
</div>
<div class="commentBox">
<p class="taskDescription">Lorem Ipsum is simply dummy text of the printing and typesetting industry.</p>
</div>
<div class="actionBox">
<asp:Repeater ID="RepDetails" runat="server" >
<ItemTemplate>
<ul class="commentList" id="listchat">
<li>
<div class="commenterImage">
<img src="http://lorempixel.com/50/50/people/6" />
</div>
<div class="commentText">
<p class="">Hello this is a test comment.</p> <span class="date sub-text">on March 5th, 2014</span>
</div>
</li>
</ul>
</ItemTemplate>
</asp:Repeater>
<div class="form-inline" role="form">
<div class="form-group">
<input class="form-control" type="text" id="txtcomment" placeholder="Your comments" />
</div>
<div class="form-group">
<button class="btn btn-default" id="postcomment">Add</button>
</div>
</div>
</div>
</div>
I have a table with TextBoxes and I set an UpdatePanel to the table and set a button that should save my new TextBoxes' value to the database as a trigger. But, when I press the button the page refreshes.
<%# Page Title="" Language="C#" MasterPageFile="~/MaestroMaster.master" AutoEventWireup="true"
CodeFile="ProjectDetails.aspx.cs" Inherits="Default" EnableEventValidation="false" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder2" runat="Server">
<style type="text/css">
.style1
{
height: 68px;
}
</style>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder3" runat="Server">
<asp:ScriptManager ID="ScriptManager" runat="server"></asp:ScriptManager>
<div class="cntr">
<h1>
פרטי הלקוח
</h1>
</div>
<br />
<asp:UpdatePanel ID="CustomerUpdatePanel">
<ContentTemplate>
<table id="CustomerDetailsTBL" class="table">
<tr>
<td>
<div class="input-group">
<input id="ProjectInfoID" type="text" class="form-control" runat="server" maxlength="9">
<span class="input-group-addon">ת.ז</span>
</div>
</td>
<td>
<div class="input-group">
<input id="ProjectInfoAddress" type="text" class="form-control" runat="server" maxlength="30">
<span class="input-group-addon">כתובת</span>
</div>
</td>
</tr>
<tr>
<td>
<div class="input-group">
<input id="ProjectInfoFirstName" type="text" class="form-control" runat="server"
maxlength="15">
<span class="input-group-addon">שם פרטי</span>
</div>
</td>
<td>
<div class="input-group">
<input id="ProjectInfoCity" type="text" class="form-control" runat="server" maxlength="15">
<span class="input-group-addon">עיר</span>
</div>
</td>
</tr>
<tr>
<td>
<div class="input-group">
<input id="ProjectInfoLastName" type="text" class="form-control" runat="server" maxlength="15">
<span class="input-group-addon">שם משפחה</span>
</div>
</td>
<td>
<div class="input-group">
<input id="ProjectInfoEmail" type="text" class="form-control" runat="server">
<span class="input-group-addon">דוא"ל</span>
</div>
</td>
</tr>
<tr>
<td>
<div class="input-group">
<input id="ProjectInfoPhone" type="text" class="form-control" runat="server" maxlength="10">
<span class="input-group-addon">טלפון</span>
</div>
</td>
<td>
<div class="input-group">
<input id="ProjectInfoFax" type="text" class="form-control" runat="server" maxlength="10">
<span class="input-group-addon">פקס</span>
</div>
</td>
</tr>
<tr>
<td>
<div class="input-group">
<input id="ProjectInfoMobile" type="text" class="form-control" runat="server" maxlength="10">
<span class="input-group-addon">טלפון נייד</span>
</div>
</td>
<td>
</td>
</tr>
<tr>
<td>
<div class="input-group">
<input id="ProjectInfoArchitectName" type="text" class="form-control" runat="server"
maxlength="15">
<span class="input-group-addon">שם האדריכל</span>
</div>
</td>
<td>
<div class="input-group">
<input id="ProjectInfoArchitectMobile" type="text" class="form-control" runat="server"
maxlength="10">
<span class="input-group-addon">טלפון אדריכל</span>
</div>
</td>
</tr>
<tr>
<td>
<div class="input-group">
<input id="ProjectInfoContractorName" type="text" class="form-control" runat="server"
maxlength="15">
<span class="input-group-addon">שם הקבלן</span>
</div>
</td>
<td>
<div class="input-group">
<input id="ProjectInfoContractorPhone" type="text" class="form-control" runat="server"
maxlength="10">
<span class="input-group-addon">טלפון קבלן</span>
</div>
</td>
</tr>
<tr>
<td>
<div class="input-group">
<input id="ProjectInfoSupervisorName" type="text" class="form-control" runat="server"
maxlength="15">
<span class="input-group-addon">שם המפקח</span>
</div>
</td>
<td>
<div class="input-group">
<input id="ProjectInfoSupervisorPhone" type="text" class="form-control" runat="server"
maxlength="10">
<span class="input-group-addon">טלפון מפקח</span>
</div>
</td>
</tr>
</table>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="ContentPlaceHolder3_SaveCustomerDetailsBTN" EventName="Click"/>
</Triggers>
</asp:UpdatePanel>
You do not have any button inside the UpdatePanel to trigger a dynamic update of the UpdatePanel content only, and then the control id that make the trigger not exist ContentPlaceHolder3_SaveCustomerDetailsBTN in this code you give