473,405 Members | 2,185 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,405 software developers and data experts.

checkbox to enable / disable hidden fields?

Hello.

I have a search form for music albums which among other things I need to
search all the song titles of the song. Normally in a search form I would
have checkboxes the user can use to select whether or not to search a given
field.

In this case it is not practical to have 20 checkboxes (each album can have
up to 20 song titles).

What I would rather do is have a single checkbox labeled "search song
titles" and have all the song title fields hidden and either enabled or
disabled as part of the search depending on the checked state of that check
box.

The hidden fields in question look like this:

<input type="hidden" name="SearchAdd_1" value="1">
<input type="hidden" name="SearchAdd_2" value="1">
etc
etc
all the way to
<input type="hidden" name="SearchAdd_20" value="1">

So if I simply put all those in the search form then it will search those
fields. Great. But how would I give the user the option to toggle them
off or on in one shot?

Thanks.
Sep 10 '05 #1
8 4242

If the fields are 'hidden', there isn't much point on disabling them,
unless you wish them disabled for them not to send along, which disabled
fields do, you can do quite a few on an event like in this case, onclick on
a checkbox, but you need to be specific on what you want, but is rather
quite simple to do using a For loop.
Danny
Sep 10 '05 #2
Sorry, should have been more specific. Yes, what I mean is I want them all
to not get sent along in the form. So effectively I need them to change
from:

<input type="hidden" name="SearchAdd_1" value="1">

to

<input type="hidden" name="SearchAdd_1" value="0">

If a checkbox is unchecked, and back to 1 if it is checked.

da*******@bluebottle.com (Danny) wrote in
<1126325189.df999db5e087b893cbbc22d75bbbf24e@teran ews>:

If the fields are 'hidden', there isn't much point on disabling
them,
unless you wish them disabled for them not to send along, which disabled
fields do, you can do quite a few on an event like in this case, onclick
on a checkbox, but you need to be specific on what you want, but is
rather quite simple to do using a For loop.
Danny


Sep 10 '05 #3
John wrote:
I have a search form for music albums which among other things I need to
search all the song titles of the song. Normally in a search form I would
have checkboxes the user can use to select whether or not to search a
given field.

In this case it is not practical to have 20 checkboxes (each album can
have up to 20 song titles).


I'd do this on the server:

Pseudo code:

if (defined $album_to_search) {
push @songs_to_search, get_list_of_song_ids_from_albumid($album_to_search );
}

Much more reliable, and it doesn't require you to shunt all the song names
to the client each time.

--
David Dorward <http://blog.dorward.me.uk/> <http://dorward.me.uk/>
Home is where the ~/.bashrc is
Sep 10 '05 #4
ASM
John wrote:
Sorry, should have been more specific. Yes, what I mean is I want them all
to not get sent along in the form. So effectively I need them to change
from:

<input type="hidden" name="SearchAdd_1" value="1">

to

<input type="hidden" name="SearchAdd_1" value="0">

If a checkbox is unchecked, and back to 1 if it is checked.


<input type=checkbox onclick="SearchAdd_1.value= this.checked? 1 : 0;">

or to get true / false as value of SearchAdd_1 :

<input type=checkbox onclick="SearchAdd_1.value= this.checked;">
--
Stephane Moriaux et son [moins] vieux Mac
Sep 10 '05 #5
ASM wrote:
<input type="hidden" name="SearchAdd_1" value="0">

If a checkbox is unchecked, and back to 1 if it is checked.


<input type=checkbox onclick="SearchAdd_1.value= this.checked? 1 : 0;">


Most browsers don't automatically create, for each element with a name, a
variable with that name as a reference to that element.

onclick="this.form.elements['SearchAdd_1'].value ...

I still wouldn't use JavaScript to solve this problem though.

--
David Dorward <http://blog.dorward.me.uk/> <http://dorward.me.uk/>
Home is where the ~/.bashrc is
Sep 10 '05 #6
ASM
John wrote:
Sorry, should have been more specific. Yes, what I mean is I want them all
to not get sent along in the form. So effectively I need them to change
from:

<input type="hidden" name="SearchAdd_1" value="1">

to

<input type="hidden" name="SearchAdd_1" value="0">

If a checkbox is unchecked, and back to 1 if it is checked.


function checkSongs(myForm,val) {
var f = myForm;
val = val? 1 : 0 ;
for(var i=0;i<f.legnth;i++)
if(f[i].name.indexOf('SearchAdd')==0) f[i].value = val;
}

Check or uncheck all :
<input type=checkbox onclick="checkSongs(this.form,this.checked)">

Uncheck all :
<input type=button onclick="checkSongs(this.form,false)" value=GO>
----------== other way ==--------

<form name="songsForm".... blah ....>
<p>Pre-selection :
all <input type=radio name="presel" onclick="wichSongs()">
some <input type=radio name="presel" onclick="wichSongs()">
any <input type=radio name="presel" onclick="wichSongs()">
<p class=sg><input type=checkbox name="SearchAdd_1" value="0"> Title 1
<p class=sg><input type=checkbox name="SearchAdd_2" value="0"> Title 2
<p class=sg><input type=checkbox name="SearchAdd_3" value="0"> Title 3
....
<p class=sg><input type=checkbox name="SearchAdd_20" value="0"> Title 20

function whichSongs() {
var f = document.songsForm;
var r = f.presel;
var j = 0;
for(var i=0;i<r.length;i++) if(r[i].checked) j=i;
var p = f.getElementsByTagName('P');
for(var i=1;i<p.length;i++) {
if(p[i].className=='sg') {
p[i].getElementsByTagName('INPUT')[0].checked=false;
p[i].getElementsByTagName('INPUT')[0].value=0;
if(j==2) p[i].style.display='none';
else p[i].style.display='';
if(j==0) {
p[i].getElementsByTagName('INPUT')[0].checked=true;
p[i].getElementsByTagName('INPUT')[0].value=1;
}
}
}
}

--
Stephane Moriaux et son [moins] vieux Mac
Sep 10 '05 #7
ASM
David Dorward wrote:
ASM wrote:

<input type="hidden" name="SearchAdd_1" value="0">
[...]
I still wouldn't use JavaScript to solve this problem though.


Yeap, but here we speak about JS
and I understood question was about JS :)

anyway JS is only an help an can't be used to do server's job.

--
Stephane Moriaux et son [moins] vieux Mac
Sep 10 '05 #8
ASM wrote:
David Dorward wrote:

<snip>
<input type="hidden" name="SearchAdd_1" value="0">

[...]
I still wouldn't use JavaScript to solve this problem though.


Yeap, but here we speak about JS
and I understood question was about JS :)

<snip>

We may speak about JS here, but one of the things we are allowed to say
is that JS in an inappropriate technology for some tasks. I cannot see
anyone with a good understanding of server-side scripting (and
particularly the handling of form input with it, but that is probably
the first aspect of server-side scripting that anyone would learn) even
considering this. You just observe the state of the checkbox when the
request arrives at the server and act accordingly.

Richard.
Sep 11 '05 #9

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: jwsacksteder | last post by:
I want to have a check box that can optionally disable a text input field in the same dialog. I am asking the user to input the start and end of a range and there needs to be a check box to select...
1
by: John Mullen | last post by:
I want to take the following HTLM and use javascript to turn on radio buttons if checkbox is checked, can I do this with javascript (maybe onClick or an array) or do i need a server side script ?...
6
by: ML.Steve | last post by:
Hi, There are lots of posts on this subject but after a couple of hours of going though them I still can't get a number of fields to be disabled when a checkbox is ticked. Basically I have a...
2
by: Kufre | last post by:
I need anyone that have done this before to help me. I'm creating a form in Access, in the form has two two checkbox, checkbox A is paid, checkbox B is partial_paid. I want the set the checkbox so...
5
by: fred | last post by:
hiya, I have got a checkbox in one of my cells in the ediit item template. Now i need to enable/disable a textbox in another boundcolumn. the problem i am facing is the checkchanged event is...
4
by: Matrixreloadedth | last post by:
How to change disable color of Checkbox??? I have a checkbox with forecolor in red but when i disable by set Enable properties to false forecolor is changed to gray color but i don't want it. how...
6
by: tshad | last post by:
I am trying to disable and enable a checkbox from javascript. The problem is that if the checkbox starts out as: <input id="Override" type="checkbox" name="Override"/> I can change it back...
2
by: Kevin | last post by:
I've been looking all over and I can't seem to find what ought to be simple. I need to disable a drop down when a checkbox is checked, and enable it when same checkbox is unchecked. I've...
7
by: Srikanth Ram | last post by:
Hi, I'm creating a PHP application. In this a dynamic table with the fields in the database is generated in a page. I have placed a checkbox in each row of the table to approve/disapprove...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.