<script type="text/javascript">
function hideRow(controlID) {
//debugger;
var trigger = controlID;
var category = document.getElementById("ddlPrograms");
var catValidation = document.getElementById("rfvPrograms");
var subcat = document.getElementById("ddlSubcategory");
var scatValidation = document.getElementsByID("rfvSubcategory");
var sort = document.getElementById("txtSortOrder");
var sortlbl = document.getElementById("lblSortOrder");
var loclbl = document.getElementById("lblLocation");
var locChecklist = document.getElementById('<%= cblLocation.ClientID %>');
var location = locChecklist.getElementsByTagName("input");
var locValidation = document.getElementById("cvLocation");
if (trigger == "divCategory") {
/* CATEGORY has been chosen
* 1. Clear Subcategory drop-down & disable
* 2. Set sort to zero & disable
* 3. enable category drop-down
* 4. enable location checkboxes
*/
subcat.options[subcat.selectedIndex].selected = false;
subcat.disabled = true;
ValidatorEnable(scatValidation, false);
sort.value = "0";
sort.disabled = true;
sortlbl.style.color = 'LightGray';
category.disabled = false;
ValidatorEnable(catValidation, true);
loclbl.disabled = false;
loclbl.style.color = 'Black';
for (var i = 0; i < location.length; i++) {
var elem = location[i];
if (elem.type == 'checkbox') {
elem.style.color = 'Black'
elem.disabled = false;
}
}
ValidatorEnable(locValidation, true);
}
else
{
/* SUBCATEGORY has been chosen
* 1. Clear Category drop-down & disable
* 2. Set sort to 1
* 3. Uncheck Location & disable
*/
category.options[category.selectedIndex].selected = false; // Clear any existing category values
category.disabled = true; // Disable category drop-down
ValidatorEnable(catValidation, false); // Disable category validation
sort.disabled = false; // Enable sort value
sort.value = "1"; // Set sort to default value of 1
sortlbl.style.color = 'Black'; // Turn sort label to enabled black
subcat.disabled = false; // Enable subcategory drop-down
ValidatorEnable(scatValidation, true); // Enable subcategory validation
loclbl.disabled = true; // Disable location label
loclbl.style.color = 'LightGray'; // Turn label color to grey
for (var i = 0; i < location.length; i++)
{
var elem = location[i];
if (elem.type == 'checkbox') {
elem.checked = false; // Clear any existing location values
elem.style.color = 'LightGray'; // Set checkbox labels to Grey color
elem.disabled = true; // Disable checkboxes
}
}
ValidatorEnable(locValidation, false);
}
}
function ValidateLocationList(source, args) {
var chkListModules = document.getElementById('<%= cblLocation.ClientID %>');
var chkListinputs = chkListModules.getElementsByTagName("input");
for (var i = 0; i < chkListinputs.length; i++) {
if (chkListinputs[i].checked) {
args.IsValid = true;
return;
}
}
args.IsValid = false;
}
</script>
ASKER
ASKER
<tr>
<td align="left" valign="top" colspan="2"><p><strong>The
Degree/Certificate/Credential/Concentration named above:</strong></p>
<asp:RadioButton ID="rbCategory" runat="server" GroupName="degreeType"
Text="belongs to this Program of Study: " Checked="True" TabIndex="3"
onClick="hideRow('divCategory')" oncheckedchanged="rbCategory_CheckedChanged" />
<asp:DropDownList ID="ddlPrograms" runat="server" TabIndex="4">
</asp:DropDownList>
<asp:RequiredFieldValidator ID="rfvPrograms" runat="server"
ControlToValidate="ddlPrograms" Display="Dynamic" Enabled="False"
ErrorMessage="RequiredFieldValidator" Font-Bold="True" ForeColor="Red"
SetFocusOnError="True">* Required</asp:RequiredFieldValidator>
<br />
<asp:RadioButton ID="rbSubcategory" runat="server" GroupName="degreeType" Text="is a Subcategory of: " onClick="hideRow('divSubcategory')"
TabIndex="5" />
<asp:DropDownList ID="ddlSubcategory" runat="server" TabIndex="6">
</asp:DropDownList>
<asp:RequiredFieldValidator ID="rfvSubcategory" runat="server"
ControlToValidate="ddlSubcategory" Display="Dynamic" Enabled="False"
Font-Bold="True" ForeColor="Red"
SetFocusOnError="True" Text="* Required"></asp:RequiredFieldValidator></td>
</tr>
<tr>
<td align="left" valign="top">
<asp:Label ID="lblSortOrder" runat="server" Text="Sort Order" Font-Bold="True" /></td>
<td>
<asp:TextBox ID="txtSortOrder" runat="server" Columns="3" MaxLength="2" TabIndex="7"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvSortOrder" runat="server"
ControlToValidate="txtSortOrder" Display="Dynamic" Enabled="False"
Font-Bold="True" ForeColor="Red" SetFocusOnError="True" Text="* Required for subcategories"></asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td ID="tdLocation" runat="server" align="left" valign="top">
<asp:Label ID="lblLocation" runat="server" Text="Program location(s)"
Font-Bold="True"></asp:Label>
</td>
<td align="left" valign="top">
<asp:CheckBoxList ID="cblLocation" runat="server" RepeatColumns="3"
RepeatDirection="Horizontal" TabIndex="8">
<asp:ListItem Value="1">Location1</asp:ListItem>
<asp:ListItem Value="2">Location2</asp:ListItem>
<asp:ListItem Value="3">Location3</asp:ListItem>
</asp:CheckBoxList><asp:CustomValidator runat="server" ID="cvLocation" ClientValidationFunction="ValidateLocationList"
ErrorMessage="* Required" Font-Bold="True" Display="Dynamic" ForeColor="Red"
SetFocusOnError="True" />
</td>
</tr>
<script type="text/javascript">
function hideRow(controlID) {
debugger;
var trigger = controlID;
var category = document.getElementById("ddlPrograms");
var catValidation = document.getElementById("rfvPrograms");
var subcat = document.getElementById("ddlSubcategory");
var scatValidation = document.getElementById("rfvSubcategory");
var sort = document.getElementById("txtSortOrder");
var sortlbl = document.getElementById("lblSortOrder");
var loclbl = document.getElementById("lblLocation");
var locChecklist = document.getElementById('<%= cblLocation.ClientID %>');
var mylocation = locChecklist.getElementsByTagName("input");
var locValidation = document.getElementById("cvLocation");
if (trigger == "divCategory") {
/* CATEGORY has been chosen
* 1. Clear Subcategory drop-down & disable
* 2. Set sort to zero & disable
* 3. enable category drop-down
* 4. enable location checkboxes
*/
subcat.selectedIndex = 0;
subcat.disabled = true;
ValidatorEnable(scatValidation, false);
sort.value = "0";
sort.disabled = true;
sortlbl.style.color = 'LightGray';
category.disabled = false;
ValidatorEnable(catValidation, true);
loclbl.disabled = false;
loclbl.style.color = 'Black';
for (var i = 0; i < mylocation.length; i++) {
var elem = mylocation[i];
if (elem.type == 'checkbox') {
elem.style.color = 'Black'
elem.disabled = false;
}
}
ValidatorEnable(locValidation, true);
}
else {
/* SUBCATEGORY has been chosen
* 1. Clear Category drop-down & disable
* 2. Set sort to 1
* 3. Uncheck Location & disable
*/
category.selectedIndex = 0; // Clear any existing category values
category.disabled = true; // Disable category drop-down
ValidatorEnable(catValidation, false); // Disable category validation
sort.disabled = false; // Enable sort value
sort.value = "1"; // Set sort to default value of 1
sortlbl.style.color = 'Black'; // Turn sort label to enabled black
subcat.disabled = false; // Enable subcategory drop-down
ValidatorEnable(scatValidation, true); // Enable subcategory validation
loclbl.disabled = true; // Disable location label
loclbl.style.color = 'LightGray'; // Turn label color to grey
for (var i = 0; i < mylocation.length; i++) {
var elem = mylocation[i];
if (elem.type == 'checkbox') {
elem.checked = false; // Clear any existing location values
elem.style.color = 'LightGray'; // Set checkbox labels to Grey color
elem.disabled = true; // Disable checkboxes
}
}
ValidatorEnable(locValidation, false);
}
}
function ValidateLocationList(source, args) {
var chkListModules = document.getElementById('<%= cblLocation.ClientID %>');
var chkListinputs = chkListModules.getElementsByTagName("input");
for (var i = 0; i < chkListinputs.length; i++) {
if (chkListinputs[i].checked) {
args.IsValid = true;
return;
}
}
args.IsValid = false;
}
</script>
ASKER
ASKER
ASKER
ASKER
The .NET Framework is not specific to any one programming language; rather, it includes a library of functions that allows developers to rapidly build applications. Several supported languages include C#, VB.NET, C++ or ASP.NET.
TRUSTED BY