Cognos 8 Javascript在多选列表框提示中选择值
时间:2020-03-06 14:51:50 来源:igfitidea点击:
我在Cognos 8.3中有一个多选列表框值提示。
它包含值:
阿德莱德北部
阿德莱德南
阿德莱德东
东阿德莱德
北悉尼
南悉尼
东悉尼
西悉尼
等等。
我希望能够在我的提示页面上添加一个按钮,单击该按钮时可以选择预定选项,例如阿德莱德北部,东南部和西部。
例如:一个Adelaide按钮选择北阿德莱德,南阿德莱德,东阿德莱德和西阿德莱德,而不是让用户在多选列表框中选择4个选择。
有办法吗?我在属性的其他区域中将列表框cboFSA命名为。
任何帮助,不胜感激。
解决方案
我假设这是基于Web的Cognos界面?如果是这样,这应该为我们做到:
如果将名称cboFSA分配为<select>
的ID属性,请使用:
<select size="6" id="cboFSA" multiple="multiple"> <option>Adelaide North</option> <option>Adelaide South</option> <option>Adelaide East</option> <option>Adelaide East</option> <option>Sydney North</option> <option>Sydney South</option> <option>Sydney East</option> <option>Sydney West</option> </select> <input type="button" value="Select all Adelaide" onclick="selectCity('adelaide', 'cboFSA');"> <input type="button" value="Select all Sydney" onclick="selectCity('sydney', 'cboFSA');"> <script type="text/javascript"> function selectCity(city, list) { if ('string' === typeof city) { city = city.toLowerCase(); if (document.getElementById) { var sel = document.getElementById(list); if (sel && (sel = sel.options)) { for (var ii = 0, iiLen = sel.length; ii < iiLen; ++ii) { sel[ii].selected = (sel[ii].text.toLowerCase().indexOf(city) !== -1); } } } } } </script>
如果将名称cboFSA分配为<select>
的NAME属性,请使用:
<select size="6" name="cboFSA" multiple="multiple"> <option>Adelaide North</option> <option>Adelaide South</option> <option>Adelaide East</option> <option>Adelaide East</option> <option>Sydney North</option> <option>Sydney South</option> <option>Sydney East</option> <option>Sydney West</option> </select> <input type="button" value="Select all Adelaide" onclick="selectCity('adelaide', 'cboFSA', this);"> <input type="button" value="Select all Sydney" onclick="selectCity('sydney', 'cboFSA', this);"> <script type="text/javascript"> function selectCity(city, list, btn) { if ('string' === typeof city) { city = city.toLowerCase(); var sel; if (btn && btn.form && (sel = btn.form[list]) && (sel = sel.options)) { for (var ii = 0, iiLen = sel.length; ii < iiLen; ++ii) { sel[ii].selected = (sel[ii].text.toLowerCase().indexOf(city) !== -1); } } } } </script>
我们可以在浏览器中使用"视图">"源"来确定Cognos是分配我们指定为ID还是NAME属性的值。