
为什么以下这段js代码 火狐可以实现 IE8和Google Chrome都没有效果呢?单击option无法触发alert
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/...
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<select id="test">
<option value="1" title="壹">第一个</option>
<option value="2" title="贰">第二个</option>
<option value="3" title="叁">第三个</option>
<option value="4" title="肆">第四个</option>
</select>
<script type="text/javascript">
var obj = document.getElementsByTagName("option");
for(var i = 0;i<obj.length;i++){
obj.item(i).onclick = function(){
alert(this.title);
}
}
</script>
</body>
</html> 展开
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<select id="test">
<option value="1" title="壹">第一个</option>
<option value="2" title="贰">第二个</option>
<option value="3" title="叁">第三个</option>
<option value="4" title="肆">第四个</option>
</select>
<script type="text/javascript">
var obj = document.getElementsByTagName("option");
for(var i = 0;i<obj.length;i++){
obj.item(i).onclick = function(){
alert(this.title);
}
}
</script>
</body>
</html> 展开
6个回答
展开全部
尊敬的用户,您好!很高兴为您答疑
看了一下您的代码,发现您并没有正确进行事件的绑定,或者说您的写法不规范。建议您尝试如下写法:
document.getElementById("test").onchange = function(){alert(this.options[this.selectedIndex].title);};
通过捕捉select的onchange事件去触发获取option的title
希望我的回答对您有所帮助,如有疑问,欢迎继续咨询我们。
看了一下您的代码,发现您并没有正确进行事件的绑定,或者说您的写法不规范。建议您尝试如下写法:
document.getElementById("test").onchange = function(){alert(this.options[this.selectedIndex].title);};
通过捕捉select的onchange事件去触发获取option的title
希望我的回答对您有所帮助,如有疑问,欢迎继续咨询我们。

2023-07-25 广告
StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,IP...
点击进入详情页
本回答由Storm代理提供
展开全部
您好!很高兴为您答疑! document.getElementById("test").onchange = function(){alert(this.options[this.selectedIndex].title);};是在用下拉框的change事件,不建议在option上做click。 您可以在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
其实你可以把你的需求发过来,可能你也有你的想法。用jQuery把,除了特殊的方法基本上 所有的浏览器都支持。
jQuery("#test option").each(function(i){//i是下标
jQuery(this).click(function (){
alert(jQuery(this).attr("title"));
});
});
jQuery("#test option").each(function(i){//i是下标
jQuery(this).click(function (){
alert(jQuery(this).attr("title"));
});
});
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
document.getElementById("test").onchange = function(){alert(this.options[this.selectedIndex].title);};
其实往往都是在用下拉框的change事件,在option上做click是不建议的。
其实往往都是在用下拉框的change事件,在option上做click是不建议的。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
火狐和其他浏览器用的就不是一个核心
追问
我想问下,实现这个效果,怎么写js可以兼容这几个浏览器
追答
对于js,我只能这么说,去熟悉js方法在各浏览器中是否被支持,尽量避免使用不兼容的js方法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询