• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 268
  • Last Modified:

Page validation works once but not twice then text box lose value

Hi
I'm trying to validate an update form that has data from the db,
The problem is when I delete the text in the text box and click submit I get the message "title required" which is correct. But if I click submit again without filling in the text box I lose all the data in all the text boxes.

Can anyone help solve this problem for me.

*********** Code ****************
<script runat="server">
string strUserName, strPassword;
void Page_Load(Object Src, EventArgs E)
{
Session["strUserName"] = Request.Form["Username"];
Session["strPassword"] = Request.Form["Password"];
if (IsPostBack)
{
Page.Validate();
        if(Page.IsValid)
            {
            Response.Redirect("confirmation.aspx");
    }
}
}
</script>

<asp:textbox MaxLength="25"  id="Company" text='<%# CustDetails.FieldValue("Headline", Container) %>' TextMode="SingleLine" Columns="32" runat="server" />
        <asp:RequiredFieldValidator ControlToValidate="Company" Display="Dynamic" EnableClientScript="true" ErrorMessage="" ID="strValCompany" runat="server" Text="Title required" />
        <asp:RegularExpressionValidator ControlToValidate="Company" Display="Dynamic" EnableClientScript="true" ErrorMessage="" ID="strRegCompany" runat="server" Text="Max 20 characters" ValidationExpression="(.|\n){0,20}" />

Thanks
George

0
Tourist_Search
Asked:
Tourist_Search
  • 9
  • 8
1 Solution
 
David H.H.LeeCommented:
Tourist_Search,
>>But if I click submit again without filling in the text box I lose all the data in all the text boxes.
-Does others web control TextBox asp.net rather than normal textbox<input type="text"/>
It sure be work. Have you turn off EnableViewState in any place like web.config?
What is the purpose of Session["strUserName"] and Session["strPassword"]? Can i see how you bind to textbox? Why not use Company.Text=yourDataSet.Rows[0].Items["Headline"].Or, this textbox is located inside your datagrid/datalist/repeater control?
0
 
Tourist_SearchAuthor Commented:
Hi x_com
I need the Sessions for another page so I save them on this page

EnableViewState is not turned off

If I have a normal text box with no database column in then that does not lose it's value.
Only the text boxes that have database columns in them lose their values.

George
0
 
David H.H.LeeCommented:
Tourist_Search,
Why not just bind the db field value in your code.
eg:

<asp:textbox MaxLength="25"  id="Company" TextMode="SingleLine" Columns="32" runat="server" />

void Page_Load(Object Src, EventArgs E)
{
 if(!Page.IsPostBack)
  {
    BindData();
  }
}

void BindData()
{
   //bind data into all textboxes
 
   DataRow drData;
   DataSet dstData;
   SqlDataAdapter dadData;
   
  '....your db connection - retrieve value from db
  dadData.Fill(dstData,"tableName");
   drData=dstData.Tables["tableName"].Rows[0];
   Company.Text=drData["Headline"].ToString();
   //...more textbox here ....
}
0
What Kind of Coding Program is Right for You?

There are many ways to learn to code these days. From coding bootcamps like Flatiron School to online courses to totally free beginner resources. The best way to learn to code depends on many factors, but the most important one is you. See what course is best for you.

 
Tourist_SearchAuthor Commented:
Hi x_com

Tried databinding but receive an error saying text boxes do not allow databinding

George
0
 
Tourist_SearchAuthor Commented:
Hi x_com

I have found the problem, it my style sheet. It is used for the layout of the table if I remove the ID selector for the table it works OK, if I add it back it does't work. This is very strange

George
0
 
David H.H.LeeCommented:
Sorry for my delay, Tourist_Search. My pc infected by a virus and now just recover ..(long story)...

>>Tried databinding but receive an error saying text boxes do not allow databinding
-Textbox not support it, but you can assign any value from db using Text property (please refer my previous solution).

>>I have found the problem, it my style sheet. It is used for the layout of the table if I remove the ID selector for the table it works OK, if I add it back it does't work. This is very strange
-Not familiar with DMX, maybe you know what happend...

Regards
x_com
0
 
Tourist_SearchAuthor Commented:
Hi X_com

No idea why style sheet would effect the post back, but since removing the id selector "#SubmissionUpdateForms" it works OK

I think it has been one off those days

George
0
 
David H.H.LeeCommented:
Tourist_Search ,

>>No idea why style sheet would effect the post back, but since removing the id selector "#SubmissionUpdateForms" it works OK
-It this css build by yourself? Maybe this css content itself cause the problems. Check it again.
0
 
Tourist_SearchAuthor Commented:
Hi x_com

Sorry for the delay in getting back to you. I found the problem, its the firewall I'm using. I have add blocking enabled and it blocking certain words i.e I have tried to create a folder called advertise and it would not work when trying to view it in the browser. Then I remenbered I have add blocking enabled so I disabled it and now the folder works. as well as the ID selector.

Moto of this story, watch what you call names in your code because if the person has add blocking enabled on their computer they may not find certain pages.

What can I do for this question as I would like to award you some points for replying to the question.

George
0
 
David H.H.LeeCommented:
No problem.
0
 
Tourist_SearchAuthor Commented:
Hi x_com

Are you busy

George
0
 
David H.H.LeeCommented:
Not really, Tourist_Search.
Why?
0
 
Tourist_SearchAuthor Commented:
Hi X_com

Thanks for the reply, I posted a question last night, this morning but the answers seem to have gone cold. I was wondering if you where not busy if you could take a look at it for me and see if you could find what the problem is.

George
0
 
David H.H.LeeCommented:
Tourist_Search,
Which thread?
0
 
Tourist_SearchAuthor Commented:
Hi x_com

The thread is: http://www.experts-exchange.com/Programming/Programming_Languages/C_Sharp/Q_20987675.html#11056796

I posted the entire page which is causing the problem at the bottom.

Thanks
George
0
 
David H.H.LeeCommented:
Tourist_Search,
Found some bugs and fix it. See the solutions there.

Regards
x_com
0
 
moduloCommented:
PAQ-ing the question and refunding 500  points

Thanks x_com.

modulo

Community Support Moderator
Experts Exchange
0
 
David H.H.LeeCommented:
Thanks for your assistance, modulo.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

What Kind of Coding Program is Right for You?

There are many ways to learn to code these days. From coding bootcamps like Flatiron School to online courses to totally free beginner resources. The best way to learn to code depends on many factors, but the most important one is you. See what course is best for you.

  • 9
  • 8
Tackle projects and never again get stuck behind a technical roadblock.
Join Now