当前位置: 首页 > 图文教程 > 网络编程 > Javascript > select组合框option的捕捉实例代码

Javascript
学习ExtJS(二) Button常用方法
学习ExtJS TextField常用方法
学习ExtJS Panel常用方法
学习ExtJS Window常用方法
学习ExtJS 访问容器对象
学习ExtJS border布局
学习ExtJS fit布局使用说明
学习ExtJS form布局
学习ExtJS accordion布局
学习ExtJS table布局
Javascript 日期处理之时区问题
JavaScript 监听textarea中按键事件
Javascript isArray 数组类型检测函数
JavaScript delete 属性的使用
防止动态加载JavaScript引起的内存泄漏问题
javascript Range对象跨浏览器常用操作
JavaScript 另类遍历数组实现代码
网页制作ajax特效实例
javascript修复浏览器中头痛问题
2008年关注基于JavaScript开发的产品

Javascript 中的 select组合框option的捕捉实例代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 305 ::
收藏到网摘: n/a

这是一份报名表单,要求用户在选中“专业人士访问员”和“定性访问员”后,分别显示“可提供被访者类型”和“容易接触到的行业”的对应表单。当呈未选中状态时,这2个框也对应的隐藏起来。

这是一份报名表单,要求用户在选中“专业人士访问员”和“定性访问员”后,分别显示“可提供被访者类型”和“容易接触到的行业”的对应表单。当呈未选中状态时,这2个框也对应的隐藏起来。
html部分

复制代码 代码如下:

<p>
<label class="title">报名参加的兼职职位(必填项)<br/>按住Ctrl键可多选</label>
<select onchange="showEasyVisitBox(this)" size="10" style="width: 200px;" multiple="multiple" id="kc_selectjob" name="kc_selectjob">
<option selected="selected" value="入户访问员">入户访问员</option>
<option value="街访访问员">街访访问员</option>
<option value="街访拦截员">街访拦截员</option>
<option value="电话访问员">电话访问员</option>
<option value="神秘顾客">神秘顾客</option>
<option value="专业人士访问员">专业人士访问员</option>
<option value="企业深访员">企业深访员</option>
<option value="定性联络员">定性联络员</option>
<option value="主持人">主持人</option>
<option value="质量控制员">质量控制员</option>
<option value="数据录入员">数据录入员</option>
</select>
</p>
<p id="supportvisitBox" style="display: none;">
<label class="title">可提供被访者类型</label>
</p>
<p id="easyvisitBox" style="display: none;">
<label class="title">容易接触到的行业</label>
</p>

javascript部分
option不能定义事件(我没试出来),所以事件要定义在select上。 这里使用的是onchange事件,onchange事件是当对象发生变化时触发,在这里用onchange比onclick合理许多,效果也好。
在调试这个脚本的时候,一开始我是用selectedIndex,试验多次发现selectedIndex在多选的情况下只能捕捉到第一个选中的选项,无法承担多选的工作。查了下参考书,才发现自己走了弯路。
复制代码 代码如下:

var oListBox = document.getElementById("kc_selectjob");
oListBox.onchange = function showEasyVisitBox(){
var oEasyvisitBox = document.getElementById("easyvisitBox");
var oSupportvisitBox = document.getElementById("supportvisitBox");
if (oListBox.options[5].selected)
{
oEasyvisitBox.style.display = "block";
}
else {
oEasyvisitBox.style.display = "none";
}
if (oListBox.options[7].selected)
{
oSupportvisitBox.style.display = "block";
}
else {
oSupportvisitBox.style.display = "none";
}
}