关于JS嵌套点击事件的问题。
$().click() 是点击命令
$().click(function(){代码}) 是绑定click事件,并不会直接运行。所以在嵌套的时候就有可能出现重复绑定的问题。下面是使用jsonp跨站访问代码
myChart.on('click', function (params) {
var totalCount = 0;
var objectGidName = new Object();
var listr = "";
var lastinstancecourt = "";
lastinstancecourt = params.value.toString().substring(2);
$.ajax({
type: "get",
url: "http://localhost:60360/Test/ReadCaseChinaList",
dataType: "jsonp",
jsonp: "jsonpcallback",//指定回调函数,这里名字可以为任意
data: "category=00301&lastInstanceCourt=" + lastinstancecourt + "&jsonpcallback=?",
success: function (json) {
$('.m-r ul li').remove();
if (json != "") {
var jsons = eval('(' + json + ')');
var obj = jsons.Data;
totalCount = obj.length;
for (var i = 0; i < obj.length; i++) {
objectGidName[obj[i].Gid] = obj[i].Title;
listr = "<li><a href=http://www.pkulaw.cn/case/pfnl_" + obj[i].Gid + ".html?match=Exact>" + obj[i].Title + "</a></li>";
$('.m-r ul').append(listr);
}
}
totalpart.innerText = params.name + "(" + totalCount +")";
}
});
$('.m-l li').on('click', function () {
var totalCount = 0;
var objectGidName = new Object();
var listr = "";
var categorynow = $(this).find('a').attr('cluster_code');
$.ajax({
type: "get",
url: "http://localhost:60360/Test/ReadCaseChinaList",
dataType: "jsonp",
jsonp: "jsonpcallback",//指定回调函数
data: "category=" + categorynow + "&lastInstanceCourt=" + lastinstancecourt + "&jsonpcallback=?",
success: function (json) {
$('.m-r ul li').remove();
if (json != "") {
var jsons = eval('(' + json + ')');
var obj = jsons.Data;
totalCount = obj.length;
for (var i = 0; i < obj.length; i++) {
objectGidName[obj[i].Gid] = obj[i].Title;
listr = "<li><a href=http://www.pkulaw.cn/case/pfnl_" + obj[i].Gid + ".html?match=Exact>" + obj[i].Title + "</a></li>";
$('.m-r ul').append(listr);
}
}
totalpart.innerText = params.name + "(" + totalCount + ")";
}
});
});
});
解决办法:
(1)使用unbind("click")先解除事件然后绑定新事件
<script>
$(function(){
$("#test").click(function(){
$("#test").unbind('click').click(function(){
alert("内部click执行");
});
alert("外部click执行");
});
})
</script>
(2)使用die()在live()前将绑定的事件都解除掉
<script>
$(function(){
$("#test").die().live("click",function(){
$("#test").die().live("click",function(){
alert("内部click执行");
});
alert("外部click执行");
});
})
</script>
--参考地址:http://www.phpddt.com/dhtml/jquery-click-problem.html
关于JS嵌套点击事件的问题。的更多相关文章
- js模拟点击事件实现代码
js模拟点击事件实现代码 类型:转载 时间:2012-11-06 在实际的应用开发中,我们会常常用到JS的模事件,比如说点击事件,举个简单的例子,点击表单外的"提交"按钮来提交表单 ...
- jquery/js记录点击事件,单击次数加一,双击清零
目的:点击按钮,点击后在网页上显示点击次数,双击清零 实现:js或者jquery 代码如下: <%@ page language="java" contentType=&qu ...
- selenium自动化之js处理点击事件失效
有时候,元素明明已经找到了,使用click()就是无法触发点击事件(当然,这种情况十分少见,至少我只遇到过一次).下面告诉大家这种场景的解决方案. 使用js代码来点击[博客园]这个按钮 代码: #!/ ...
- JS: javascript 点击事件执行两次js问题 ,解决jquery绑定click事件出现点击一次执行两次问题
javascript 点击事件执行两次js问题 在JQuery中存在unbind()方法,先解绑再添加点击事件,解决方案为: $(".m-layout-setting").unbi ...
- vue.js click点击事件获取当前元素对象
Vue.js可以传递$event对象 <body id="app"> <ul> <li v-on:click="say('hello!', ...
- JS——按钮点击事件累加注册问题
最近在工作上遇到一个点击事件累加的问题,为元素添加点击事件效果,但是总是效果失败,最后发现点击事件被执行了多次,上网查了一下,下边就是解决这个问题的几种思路 案列引自 踮起脚尖眺望6 $(" ...
- js阻止点击事件的冒泡的实现
<html> <head> <script type="text/javascript"> function fnclick1(){ alert ...
- js利用点击事件做一个简单的计算器
先放一个样式图: 源代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"&g ...
- js 键盘点击事件
回车键(Enter)的触发事件 js 代码如下: document.onkeydown = function (e) { if (!e) e = window.event; if ((e.keyCo ...
随机推荐
- Java日期处理
日常工作中经常遇到关于日期的处理,下面把自个写好的Java代码段分享一下,也当做自个的一个备份,同时也欢迎交流,如若分享请注明出处,谢谢. 1.返回两个时间段之间的月份: /** * 返回任意两个月份 ...
- 用 TWebBrowser 查找网页上的按钮,编辑框,
Form1.wb1.Navigate(Aurl); <table> <tr> <td style="text-align:right;">< ...
- onDestroy 和 onBackPressed、onfinish 的区别
在android 开发中, 我容易不区分 onDestroy .onBackpress.onFinish. 其实,可以这样理解: (1)onDestory 的使用,是销毁了activity的实例在内存 ...
- 葱类 Allium
韭菜 Allium tuberosum (Chinese chives) 韭黄(韭芽):不见光的特殊培养的软化韭菜品种 藠头(薤) Allium chinense (Chinese onion) 蒜 ...
- Javascript并发模型和事件循环
Javascript并发模型和事件循环 JavaScript的"并发模型"是基于事件循环的,这个并发模型有别于Java的多线程, javascript的并发是单线程的. Javas ...
- NOIP2012拓展欧几里得
拉板题,,,不说话 我之前是不是说过数据结构很烦,,,我想收回,,,今天开始的数论还要恶心,一早上听得头都晕了 先来一发欧几里得拓展裸 #include <cstdio> void gcd ...
- How To Handle a Loss of Confidence in Yourself
Do you feel like you've lost confidence in yourself? Have you had strong self doubts? Perhaps you we ...
- 图片过大,在div中不压缩的居中方法
在图片全屏轮播时,为了兼容更大的屏幕,我们常常把图片设置为很大,但是在显示的过程中,如果让图片随浏览器自动变化的话,常常会把图片压缩变形,影响显示,在不压缩图片的情况下,如何只显示图片的中间部分呢? ...
- ZeroMQ接口函数之 :zmq_msg_set - 设置消息的性质
ZeroMQ 官方地址 :http://api.zeromq.org/4-1:zmq_msg_set zmq_msg_set(3) ØMQ Manual - ØMQ/3.2.5 Name zmq_m ...
- c# 反射事件
被反射类中: public delegate void CompeletedHandler(); public static event CompeletedHandler AnalysisCompe ...