Solved

Can't set checkbox to false because my fieldname/idfield contains a PERIOD.????

Posted on 2007-04-04
3
162 Views
Last Modified: 2010-04-16
How can I set this checkbox to false?

I have this function that gets called, the function does some other things, but the one thing it is not doing is setting my checkbox to false so its no longer "checked" visually.  I do not get an error, it just does not work.

function chk(ob,ismaster,requiredCheckBox)      {
            alert(requiredCheckBox);
                requiredCheckBox.checked = false;
}

When I do the alert the value I see is :     required_someUniqueIdField.streetAddress

There is clearly a period in my field names, but that is because they are dynamic and must be this way, but it seems to throw things off.  

So in other words:  requiredCheckBox.checked is really: required_someUniqueIdField.streetAddress.checked = false;  

Is there a way I can keep my current field name and achieve what I want given the fact there is a period in the field name?

Thanks,

-ws
0
Comment
Question by:Westside2004
3 Comments
 
LVL 15

Accepted Solution

by:
stanscott2 earned 500 total points
ID: 18852872
Use brackets, rather than dot notation, like this:

<html>
<body>

<form>
     <input type="checkbox" name="thisTest.myName">
</form>

<script type="text/javascript">
   var myCheckBox = "thisTest.myName";
   document.getElementsByTagName("form")[0][myCheckBox].checked = true;
</script>

</body>
</html>

0
 
LVL 28

Expert Comment

by:Pravin Asar
ID: 18852979
<script type="text/javascript">
function TestCheckBox (theForm) {
   for (ix=0; ix < theForm.elements.length; ix++) {
       var fld = theForm.elements[ix];
       ///  
       if (fld.name == 'checkbox1.fld1') { fld.checked= false; break; }
   }
   return false;
}
</script>
<form>
<table>
<tr>
<td  colspan="2"><input type="checkbox" name="checkbox1.fld1" checked>Option
</td>
<td>
<input type="button" value="Test " onclick="TestCheckBox(this.form);">
</td>
</tr>
</table>
0
 
LVL 1

Author Comment

by:Westside2004
ID: 18853029
Hi,

I changed the fieldname so it does not have a period in it, but the code still does not work.  Here is the complete code with explanation

I am creating a dynamic form builder where the user can choose a field and decide if this field is required or not.  So if the user checks the box next to the field, that field will appear on a form ultimately.  They also can click a checkbox next to the field and make it that field required or not when the form ultimately renders.

If they choose to make the field required, I automatically select the checkbox next to the field for them.  However, if they deselect the checkbox next to the field, the required checkbox still remains checked and I want to make it UNCHECKED.   It is a bit confusing, but I am hoping this makes sense.

function chk(ob,ismaster,requiredCheckBox)      {
     var isCheck = ob.checked;
     var d=document.getElementsByTagName("input");
     var testAll = true;
   
            for(var i=0;i<d.length;i++) {
   
                  if (!ismaster) {
      // Sub- box was checked
            if (d[i].type && d[i].type=='checkbox') {
              if (d[i].name=='checkAll') {
             var theMaster = d[i];
           }
                               else {
             testAll=(d[i].checked && testAll);  // set testAll to false if any are false
           }
        }
                  }
                  else {
            // Master box was checked
        if(d[i].type && d[i].type=='checkbox' && d[i].name.indexOf((ismaster))!=-1) d[i].checked = isCheck;
      }
   } // close for loop

   if (!ismaster) theMaster.checked=testAll;

      } // close function


The parameter I pass in is called "requiredCheckBox" I want to set this to false if the user unchecks the field.

-ws
0

Featured Post

Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

Join & Write a Comment

I hope you'll find this tutorial useful and interesting. So let's try to extend Tcl with a new package.  For anyone more deeply interested please check out the book "Practical Programming in Tcl and Tk". It's really one of the best written books abo‚Ķ
This article will show, step by step, how to integrate R code into a R Sweave document
The viewer will learn how to count occurrences of each item in an array.
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.

760 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now