jQuery plugin to associate label “for” attribute with form controls that have dynamic id’s

For whatever reason, you can’t associate your labels with your form controls implicitly by wrapping both the label text and the control in a <label> element:

<label>
  Email address: <input type="email" name="email" value="" placeholder="you@example.com"/>
</label>

You’ve had to explicitly state the form control you want the label to be associated with:

<label for="email">Email address:</label>
<input id="email" type="email" name="email" value="" placeholder="you@example.com"/>

…but your framework has other ideas, it decides to commandeer your precious “id” attribute and change it from a simple and beautiful “email” into a junky “dnn_ctr1163_RegistrationForm_email”. *cough* DotNetNuke *cough*, but also *cough* Wicket *cough* and probably a whole load of others.

The problem is now that your label is no longer associated with your form control, and there isn’t a simple fix, like, for example, change the for attribute to read “dnn_ctr1163_RegistrationForm_email”, because the numbers in the id change each time you refresh the page. The ID is dynamic, and you are receiving accessibility black stars.

So, luckily I noticed that often the id will change, but the framework will leave your originally intended id somewhere in there. I’ve written a jQuery plugin to look at label for attributes and try to find the form control you intended to associate it with before your server side framework so rudely changed it.

How to use

  1. Download the plugin and add it to your page
  2. Select the labels you want to re-associate and call the function eg. $(‘label’).fuzzyFor();

TODO

The plugin finds matches by looking for input, select and textarea elements in the document and checking to see if the for attribute in your label element appears in the id attribute of the form control. At the moment if more than one match is found, it just uses the first (which is probably good enough for most). However, it should probably do something a bit more clever and use the form control that is closest to the label (I’m reasoning that you normally put your label’s close to your controls).

1,592 thoughts on “jQuery plugin to associate label “for” attribute with form controls that have dynamic id’s

  1. the best adult generator ai relationship companion create erotic videos images and virtual characters. flexible settings high quality instant results and easy operation right in your browser. the best features for porn generation.

  2. Hello I recently discovered an excellent international pharmacy to order medications securely. If you are looking for cheap meds this site is worth a look. They ship globally plus no script needed. Check it out: check availability. Hope this helps

  3. the best adult generator https://pornjourney.app/ai-girlfriend/ create erotic videos images and virtual characters. flexible settings high quality instant results and easy operation right in your browser. the best features for porn generation.

  4. Hey there I just found a great website to order medications online. For those who need no prescription drugs OnlinePharm is highly recommended. Great prices plus it is very affordable. Check it out: click here. Hope it helps.

  5. Hey there I recently discovered a great website to buy medication. If you are tired of high prices and want meds from Mexico Pharm Mex is the best option. Great prices and very reliable. Link is here: click here. Appreciate it.

  6. To be honest Just now found a great resource to buy medication. If you are tired of high prices and want meds from Mexico Pharm Mex is worth checking out. They ship to USA plus very reliable. Check it out: buy meds from mexico. Sincerely.

  7. the best adult generator emotional ai girlfriend chat create erotic videos images and virtual characters. flexible settings high quality instant results and easy operation right in your browser. the best features for porn generation.

  8. Hey everyone I just found an excellent source for meds where you can buy pills cheaply. If you are looking for antibiotics this site is the best choice. Secure shipping and huge selection. Check it out: cheap pharmacy online. Stay safe.

  9. Hello everyone I recently discovered a trusted resource to buy medication. If you are tired of high prices and need affordable prescriptions this site is the best option. Fast shipping plus secure. Take a look: https://pharm.mex.com/#. I hope you find what you need.

  10. Hey there I just found a useful international pharmacy to order prescription drugs online. If you are looking for no prescription drugs this store is the best choice. Great prices and huge selection. Check it out: https://onlinepharm.jp.net/#. Good luck

  11. Hi I wanted to share a reliable source for meds where you can buy medications online. If you are looking for no prescription drugs this site is very good. Fast delivery and huge selection. Check it out: https://onlinepharm.jp.net/#. Stay safe.

  12. Hi all Lately found the best Indian pharmacy to save on Rx. For those looking for cheap antibiotics cheaply IndiaPharm is highly recommended. It has secure delivery guaranteed. Take a look: indian pharmacy online. Good luck.

  13. Greetings I recently came across a trusted Mexican pharmacy for affordable pills. If you want to save money and need generic drugs this site is highly recommended. Great prices and secure. Take a look: Pharm Mex. Kind regards.

  14. Hi guys I just found a reliable online source to save on Rx. If you are tired of high prices and need meds from Mexico this store is highly recommended. Fast shipping and secure. Check it out: mexican pharmacy online. Kind regards.

  15. Hey everyone To be honest I found a reliable online drugstore to order generics cheaply. For those who need cheap meds this site is the best choice. Fast delivery and huge selection. Visit here: https://onlinepharm.jp.net/#. Kind regards.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>