...
Code Block |
---|
<script type="text/javascript" src="../../scripts/jquery/jquery-1.3.2.min.js"></script> <!-- jquery loaded for nonessential purposes. --> > if(jQuery){<script type="text/javascript"> if(jQuery){ $){ $j(document).ready(function(){ if ( $j.browser.msie ) { $j(":checkbox").click(function(){ $j(this).change(); }); } $j(".enableDisable").each(function(){ var group = $j(this); function disableFn(){ group.children("#disabled").fadeTo(250,0.33); group.children("#disabled").find(":checkbox").attr("checked",false); //uncheck group.children("#disabled").find("input[type$='text']").val(""); group.children("#disabled").find("input").attr("disabled",true); //disable } function enableFn(){ group.children("#disabled").fadeTo(250,1); group.children("#disabled").find("input").attr("disabled",false); } disableFn(); $j(this).children("#trigger").find(":checkbox:first").change(function(){ var checked = $j(this).attr("checked"); if(checked == true){ enableFn(); }else{ disableFn(); } }); }); $j(".checkboxGroup").each(function(){ var group = $j(this); var uncheckAll = function(){ group.find("input[type$='checkbox']").attr("checked",false); group.find("input[type$='checkbox']").change(); } var uncheckRadioAndAll = function(){ group.find("#checkboxAll,#checkboxRadio").find("input[type$='checkbox']").attr("checked",false); group.find("#checkboxAll,#checkboxRadio").find("input[type$='checkbox']").change(); } group.find("#checkboxAll").find("input").click( /* This was tricky... A number of things needed to happen Basically, This is supposed to treat a group of inputs as if were all one big checkbox. It is designed so that a checkbox can be next to an input, and the user clicks the input, the checkbox checks as well. But, when the user clicks the checkbox, the browser marks the checkbox as checked. Therefore, when we check if the checkbox is already checked, it always respondes true... We needed to have 2 cases: when the clicking action is on the first checkbox and when the action is on any other. */ function(){ var flip; var checked = $j(this).siblings(":checkbox:first").attr("checked"); if($j(this).attr("name") == $j(this).parents("#checkboxAll:first").find(":checkbox:first").attr("name")){ checked = $j(this).attr("checked"); flip = checked; }else{ flip = !checked; } if($j(this).attr("type") == "text") if(flip == false) flip = !filp; // this is so the user doesn't go to check the checkbox, then uncheck it when they hit the input. uncheckAll(); $j(this).parents("#checkboxAll:first").find(":checkbox").attr("checked",flip); $j(this).parents("#checkboxAll:first").find(":checkbox").change(); } ); group.find("#checkboxRadio").find("input[type$='checkbox']").click(function(){ uncheckAll(); $j(this).siblings("input[type$='checkbox']").attr("checked",false); $j(this).attr("checked",true); $j(this).change(); }); group.find("#checkboxCheckbox").click( function(){ uncheckRadioAndAll(); } ); }); }); } </script> $j(document).ready(function(){ if ( $$j.browser.msie ) { $$j(":checkbox").click(function(){ $$j(this).change(); }); } $ $j(".enableDisable").each(function(){ var group = $$j(this); function disableFn(){ group.children("#disabled").fadeTo(250,0.33); group.children("#disabled").find(":checkbox").attr("checked",false); //uncheck group.children("#disabled").find("input[type$='text']").val(""); group.children("#disabled").find("input").attr("disabled",true); //disable } function enableFn(){ group.children("#disabled").fadeTo(250,1); group.children("#disabled").find("input").attr("disabled",false); } disableFn(); $$j(this).children("#trigger").find(":checkbox:first").change(function(){ var checked = $$j(this).attr("checked"); if(checked == true){ enableFn(); }else{ disableFn(); } }); }); $$j(".checkboxGroup").each(function(){ var group = $$j(this); var uncheckAll = function(){ group.find("input[type$='checkbox']").attr("checked",false); group.find("input[type$='checkbox']").change(); } var uncheckRadioAndAll = function(){ group.find("#checkboxAll,#checkboxRadio").find("input[type$='checkbox']").attr("checked",false); group.find("#checkboxAll,#checkboxRadio").find("input[type$='checkbox']").change(); } group.find("#checkboxAll").find("input").click( /* This was tricky... A number of things needed to happen Basically, This is supposed to treat a group of inputs as if were all one big checkbox. It is designed so that a checkbox can be next to an input, and the user clicks the input, the checkbox checks as well. But, when the user clicks the checkbox, the browser marks the checkbox as checked. Therefore, when we check if the checkbox is already checked, it always respondes true... We needed to have 2 cases: when the clicking action is on the first checkbox and when the action is on any other. */ function(){ var flip; var checked = $$j(this).siblings(":checkbox:first").attr("checked"); if($$j(this).attr("name") == $$j(this).parents("#checkboxAll:first").find(":checkbox:first").attr("name")){ checked = $$j(this).attr("checked"); flip = checked; }else{ flip = !checked; } if($$j(this).attr("type") == "text") if(flip == false) flip = !filp; // this is so the user doesn't go to check the checkbox, then uncheck it when they hit the input. uncheckAll(); $ $j(this).parents("#checkboxAll:first").find(":checkbox").attr("checked",flip); $ $j(this).parents("#checkboxAll:first").find(":checkbox").change(); } ); group.find("#checkboxRadio").find("input[type$='checkbox']").click(function(){ uncheckAll(); $$j(this).siblings("input[type$='checkbox']").attr("checked",false); $$j(this).attr("checked",true); $$j(this).change(); }); group.find("#checkboxCheckbox").click( function(){ uncheckRadioAndAll(); } ); }); }); } </script> |
First, JQuery is included. Next, the script checks to see if JQuery is loaded properly. If so, it proceeds. This means that if there is problem with JQuery, the script will do nothing, and the form will render as it would with no scripting.
...