一个按钮,btn
一个下拉,sel
btn.onclick = function(){
//do sth;
sel.onchange();
}sel.onchange = function(event){
var evt = window.event || event;
var tgt = evt.srcElement || evt.target; //IE下 tgt = btn ,evt.type = click
//FF下 tgt = sel ,evt.type = onchange}
这太郁闷了,我在asp.net下工作,我的dropdownlist用了一个jquery插件,这个插件按照原来的select生成了div+a标签来模拟dropdownlist,而且,在点击a标签的时候引发dropdownlist的onchange事件。当我用了asp.net的验证控件,问题出现了,asp.net自动为验证控件写了一些客户端代码,代码的出问题的部分就是判断
event的target或者srcElement是谁,正常情况下,如果是select自己引发了onchange,那么这个时候target和srcElement
都正常指向select,但是现在是点击a标签时触发的,IE下就有问题了,它的srcElement指向了a标签元素,而在FF下,一切正常。出现这个问题,我改怎么办,如果我放弃。net自带的验证控件的话,项目中好多地方都用了,不好改啊
放弃我的dropdownlist的话,,,好多效果又实现不了,怎么办
一个下拉,sel
btn.onclick = function(){
//do sth;
sel.onchange();
}sel.onchange = function(event){
var evt = window.event || event;
var tgt = evt.srcElement || evt.target; //IE下 tgt = btn ,evt.type = click
//FF下 tgt = sel ,evt.type = onchange}
这太郁闷了,我在asp.net下工作,我的dropdownlist用了一个jquery插件,这个插件按照原来的select生成了div+a标签来模拟dropdownlist,而且,在点击a标签的时候引发dropdownlist的onchange事件。当我用了asp.net的验证控件,问题出现了,asp.net自动为验证控件写了一些客户端代码,代码的出问题的部分就是判断
event的target或者srcElement是谁,正常情况下,如果是select自己引发了onchange,那么这个时候target和srcElement
都正常指向select,但是现在是点击a标签时触发的,IE下就有问题了,它的srcElement指向了a标签元素,而在FF下,一切正常。出现这个问题,我改怎么办,如果我放弃。net自带的验证控件的话,项目中好多地方都用了,不好改啊
放弃我的dropdownlist的话,,,好多效果又实现不了,怎么办
解决方案 »
- 我靠,,邪门了,,document.getElemnetById没用。。
- 谁能解释下flvcd.com的flvcd.js的各个函数
- javascript 原型应该如何设计
- <a href="http://www.sina.com" target="_blank">新浪</a>此标签如何在js中使用呢?
- 急!有无办法让input框自适应其中文字的长度?
- 怎样动态改变光标的状态???
- 谁有修改浏览器的代码,急需,谢了!!
- 在一个字符串a中寻找另一个字符串b,若有将a字符串中的b去掉,若没有在a的后面加上b,使用JS脚本有没有什么好的方法?
- 怎么实现ctrl+c的功能啊?
- 有没有javascript大神来挑战一下
- 判断点击了哪一个按钮
- javascript 类型问题
var obj=srcElement.parentNode;
$("#sel").triggerHandler("change"); //或 $("#sel").change();
});$("#sel").change(function(event){
var tgt = $(this);
}
2. 或者可以判断target, 如果是a, 则用select来替换掉, 作为参数传入那个共有方法.
{
window.event.srcElement = mySelectElement;
window.event.type = change;}
因为.net自动为验证控件写的代码我肯定改动不了,所以我只能给它准备正确的srcElement了,只能在触发change后改动event了