我有一个网络表单,在本例中,用户从下拉字段中选择项目类型,并根据所选类型隐藏/显示各个部分。下面数组中的 id 是字段集 id,值是在下拉字段中选择的值。
现在问题来了。我有一个客户希望在选择特定项目时出现两个部分/字段集。[此选项可适用于各种项目类型]。例如,如果我选择“小册子”作为项目类型,客户希望显示小册子部分/字段集以及名为“Brief Details”的字段集。它的 ID 是“556”。
如果我将“{id : '556', value:'Brochure'}”添加到下面的数组中,“Brief Details”部分/字段集将显示,但它隐藏了在这种情况下也应该显示的“Brochure”字段集. 我确实明白为什么会发生这种情况,但无法弄清楚如何使这个 javascript 工作。
那么如何使用下面的代码库进行编码[如果选择的项目类型等于小册子,则显示字段集 556和159]
var projectTypes = new Array (
{id : '123', value:'Banner'},
{id : '456', value:'Ad'},
{id : '789', value:'Graphics'},
{id : '987', value:'Billboard'},
{id : '654', value:'Booklet'},
{id : '321', value:'Tickets'},
{id : '147', value:'Window'},
{id : '159', value:'Brochure'}
);
/*function below occurs onChange event of project type dropdown:*/
refreshSections(project_type);
/*
* Function used to hide/show sections based on selected project type
*/
function refreshSections(selectedType)
{
for (var i = 0; i < projectTypes.length; i++)
{
if (projectTypes[i].value == selectedType)
{
document.getElementById("section-"+ projectTypes[i].id).style.display = '';
} else {
document.getElementById("section-"+ projectTypes[i].id).style.display = 'none';
}
}
}