Solved

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

Posted on 2007-04-04
3
165 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

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I've been trying to accomplish this for a while and it just struck me yesterday how to accomplish this task. I have done searches all over the internet looking for ways to email pages from my applications and finally I have done it!!! Every single s…
This article is meant to give a basic understanding of how to use R Sweave as a way to merge LaTeX and R code seamlessly into one presentable document.
Learn the basics of modules and packages in Python. Every Python file is a module, ending in the suffix: .py: Modules are a collection of functions and variables.: Packages are a collection of modules.: Module functions and variables are accessed us…
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…

914 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

17 Experts available now in Live!

Get 1:1 Help Now