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

simple one?

Hi,
As there is no validation for a check box I slid in a Javascript function to check that a checkbox has been checked and to alert the user and stop the form from submitting if they haven't.
Done this many many times in classic ASP but .NET doesn't seem to want to play.
Have a made a syntax error? Is it something to do with all the forms being server-side?

The function:
<script language="javascript" type="text/javascript">
   function AgreeCheck() {
        if(document.form1.ChkAgree.checked = false)
        {
            alert('Please tick the I agree box to continue');
            document.form1.ChkAgree.focus();
            return false;
        }
     }
   </script>

The event:
<form id="form1" runat="server" onsubmit="return AgreeCheck()">

The html server up:
<form name="form1" method="post" action="Default.aspx" onsubmit="javascript:return WebForm_OnSubmit();" id="form1">

Error:
document.form1.ChkAgree is null or not an object
0
QPR
Asked:
QPR
  • 3
  • 2
  • 2
  • +1
1 Solution
 
Guy Hengel [angelIII / a3]Billing EngineerCommented:
can you tell us how you defined the ChkAgree input?
I guess that the issue is case sensitivity...
0
 
Daniel ReynoldsSoftware Applications Developer / IntegratorCommented:
Is the ChkAgree control within the Form tags?
0
 
QPRAuthor Commented:
<asp:CheckBox ID="ChkAgree" runat="server" />
Yes inside form tags
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
Daniel ReynoldsSoftware Applications Developer / IntegratorCommented:
Create a hidden field html field to carry the value of the checkbox. Set it when the checkbox is clicked.
Check the value of that field instead of the server control.
0
 
jnhorstCommented:
First fix your operator in the if statement to "==".  Then make sure your form tag is named "form1".  Based on your comment above it looks like your <input type="checkbox"...>, when rendered, may not have a name attribute.  It should render like this (do a View Source to see):

<input type="checkbox" id="ChkAfree" name="ChkAgree".../>

The name part of the name/value pair in an HTML form comes from the name attribute in the input tag.

John
0
 
QPRAuthor Commented:
changed operator to ==
added name="form1" (visual studio put a squiggle under that but no problem)

Same error null or not an object.
It would be null if unchecked would it? Can you give a checkbox an unchecked value?
0
 
QPRAuthor Commented:
solved it myself.
I changed the checkbox from an asp server side control to a bog standard html input type.
Now all is fine!
0
 
Guy Hengel [angelIII / a3]Billing EngineerCommented:
PAQing question with points refunded
angelIII, page editor
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

  • 3
  • 2
  • 2
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now