$(document).ready(function(){
$(".span-1").click(function(){
$(".time-box").show();
$(".timer").click(function(){
alert("进来了?")
if($(this).attr('class')!='timer baowq'){
var timer1=this.parentNode.previousSibling.previousSibling.innerText+"-"+this.innerText;
$(".span-2").text(timer1);
$(".time-box").hide();
}
})
})
})
为什么要把 $('.timer') 的click事件写到 $('.span-1')的 点击事件中呢。。
第一个点击事件发生时 注册了第二个点击事件但是没有模拟点击的动作 所以当然不会进去
因为我这里是两个控件。。。先通过第一个控件进去,然后在获取点击事件
你这是想做什么东西啊,为什么第二个点击事件放在第一个里面?没有意义,要么直接第一个点击事件就触发事件,要么就像上面说的通过trigger()来触发。
但是不论那个都没有用到第二click
可以考虑做一个定时器,时间到了执行第一个事件,显示$(".time-box").show();
然后,时间到了点击的话,执行第二个事件
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>使用数组实现级联列表</title>
<script src="js/jquery-1.8.3.min.js"></script>
</head>
<body>
菜品类别:<select id="sType"">
</select>
<select id="sMenu">
</select>
<script>
//定义菜品类别数组和菜品数组
var menuType=['adc','上单','ap','打野','辅助'];
var menu=[['女警','女枪','VN','EZ'],
['德马','瑞文','蒙多','豹女'],
['卡牌','维克托','亚索','狗头'],
['盲僧','男枪','卡纸克','皇子'],
['奶妈','日女','风女','琴女']];
//将数组的内容赋值到标签中
for(var n=0;n<menuType.length;n++)
{
$('<option>').html(menuType[n]).attr('value',n).appendTo($('#sType'))
}
//显示列表
for(var n=0;n<menu[0].length;n++)
{
$('<option>').html(menu[0][n]).appendTo($('#sMenu'))
}
//定义函数回调
$('#sType').change(function(){
//修改这个类别对应的菜品
$('#sMenu').children().remove();
var $s = $('#sType').val();
for(var n=0;n<menu[$s].length;n++)
{
$('<option>').html(menu[$s][n]).appendTo($('#sMenu'))
}
})
</script>
</body>
</html>
整个的代码在上面发了,你看吧
那我就回答你的问题好了,你那个点击事件是注册在另一个点击事件当中的。当你单独去点击的时候是找不到那个点击事件的,所以不会执行。
解决方法就是你点击第一个的时候直接让第二个显示出来就好,然后你把第二个点击事件单独拿出来
$(document).ready(function(){
$(".span-1").click(function(){
$(".time-box").show();
})
$(".timer").click(function(){
alert("进来了?")
if($(this).attr('class')!='timer baowq'){
var timer1=this.parentNode.previousSibling.previousSibling.innerText+"-"+this.innerText;
$(".span-2").text(timer1);
$(".time-box").hide();
}
})
})
$(document).ready(function(){
$(".span-1").click(function(){
$(".time-box").show();
$('.timer').trigger('click');
});
$(".timer").click(function(){
alert("进来了?")
if ($(this).attr('class')!='timer baowq') {
var timer1=this.parentNode.previousSibling.previousSibling.innerText+"-"+this.innerText; $(".span-2").text(timer1);
$(".time-box").hide();
};
});
});