需要点击图片将套组发布, 页面代码:

  1. <img width="20px" src="
  2. <s:property value="IMAGES_PATH" /><s:if test='%{releaseStatus == "YES"}'>pubed.png</s:if>
  3. <s:else>nopub.png</s:else>"
  4. onclick="<s:if test='%{releaseStatus == "YES"}'>changeToClose(<s:property value="suiteId" />, $(this));</s:if>
  5. <s:else>changeToOpen(<s:property value="suiteId" />, $(this));</s:else>" />

在套组发布之后, 需要改变下次点击的事件调用的方法。

使用:img.click( function () { changeToOpen(suitId, img); });

结果:先执行img所定义的 onclick 事件定义的方法, 然后执行之前 onclick 所绑定的方法, 最后执行这次绑定的方法。

找到解除绑定的代码:unbind('click')

img.unbind('click').click( function () { changeToOpen(suitId, img); });

结果:先执行img所定义的 onclick 事件定义的方法, 然后执行这次绑定的方法。

 找到解除 onclick  绑定的代码: 

img.attr('onclick', '').unbind('click').click( function () { changeToOpen(suitId, img); });

  1. function changeToOpen(suitId, img){
  2. //这里借助 train_com ac_type 来实现传递锁信息
  3. params = "train_com="+suitId+"&ac_type=yes";//alert(params);
  4. $.post("doSimulatorPubById.do",params,function(data){
  5. eval("var rst = "+data);
  6. alert(rst.msg);
  7. if(rst.status == 3){
  8. img.attr("src","<s:property value="IMAGES_PATH" />pubed.png");
  9. img.attr('onclick', '').unbind('click').click( function () { changeToClose(suitId, img); });
  10. }
  11. });
  12. }
  13. function changeToClose(suitId, img){
  14. //这里借助 pilotInfForVoteDto 来实现传递锁信息
  15. params = "train_com="+suitId+"&ac_type=no";//alert(params);
  16. $.post("doSimulatorPubById.do",params,function(data){
  17. eval("var rst = "+data);
  18. alert(rst.msg);
  19. if(rst.status == 3){
  20. img.attr("src","<s:property value="IMAGES_PATH" />nopub.png");
  21. img.attr('onclick', '').unbind('click').click( function () { changeToOpen(suitId, img); });
  22. }
  23. });
  24. }

巧妙使用Jquery 改变元素的 onclick 事件的更多相关文章

  1. jquery在元素上收购事件

    jquery的给元素绑定的事件能够用data方法取出来 通过$(element).data("events")来获取 // 比方给一个button绑定两个click事件 $(&qu ...

  2. selenium用jquery改变元素属性

    一.jQuery 语法 jQuery 语法是通过选取 HTML 元素,并对选取的元素执行某些操作. 1.基础语法: $(selector).action() 选择符(selector)即," ...

  3. 为listview的item中的元素设置onclick事件

    表达能力比较差,所以现在解释一下标题的意思:listview的列表项,点击的时候触发的是itemOnClick事件,点击后转向到A页:那么,假如在子项中有一个连接是想转到B页,我们该怎么办呢.这样能明 ...

  4. jQuery之元素操作及事件绑定

    1.操作元素之属性: ①attr读:("selector").attr("属性名"):=>getAttribute("属性名"):改: ...

  5. 如何给html元素的onclick事件传递参数(即如何获取html标签的data-*属性)

    现在做的一个小系统为了达到领导所说的很炫的效果有用到Metro UI CSS,但是因为如何给每个磁贴(div标签)的click事件传递参数折腾了蛮久(偶是菜鸟),后来终于找到一个解决方案即通过data ...

  6. jquery改变元素上下排列的顺序

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. jquery改变元素的值的函数text(),html(),val()

    text() - 设置或返回所选元素的文本内容 html() - 设置或返回所选元素的内容(包括 HTML 标记) val() - 设置或返回表单字段的值,适合于标签中有value属性的标签. 代码: ...

  8. 如何给html元素的onclick事件传递参数即如何获取html标签的data

    某些非text元素,如a.button等用于触发时间的标签可已将要传的数据放在一个属性中,如data,这个属性必须是不影响样式的,可以使用任意非html定义的名字命名属性,然后将数据传到属性中, &l ...

  9. js为元素添加onclick事件

    $("div.manu a:last").on('click',function(){ if (page == totalPage) { return; } page = page ...

随机推荐

  1. 说说shell脚本中的export 和 source,bash

    小弟刚刚接触linux,对linux上的很多东西都比较陌生,所以写一写博客,当做自己工作的总结和技术的积累吧,也是鞭策自己不断努力的去学习. 今天之所以起这个标题,把export,source ,ba ...

  2. 自定义View绘制字符串

    import android.app.Activity; import android.os.Bundle; import android.view.Display; import android.v ...

  3. python27+django调用数据库

    我用的mysql版,先上无模板的版本,在views里加上 import MySQLdb 然后在下方写函数 def use_databases(request): db = MySQLdb.connec ...

  4. ArcGIS API Reference & Flex API samples学习进度备忘

    书签:跳过:另外跳过的内容有待跟进 __________________学习资源: 1.http://help.arcgis.com/en/webapi/flex/apiref/index.html ...

  5. (转)log4j:WARN No appenders could be found for logger 解决方案

    我们在使用Log4j的时候,总是出现: log4j:WARN No appenders could be found for logger (org.apache.ibatis.logging.Log ...

  6. WebApi参数传递

    c# webapi的参数传递方式:1.查询字符串(query string):2.内容主体(content body) 当然也有cookie或url部分或头部信息(header)等其它传方式,这里仅讨 ...

  7. 【全国互虐】Fibonacci矩阵

    orz啊又被屠了 人生如此艰难 题意: 给定一个k维的n^k的超立方体 超立方体的元素Ai1,i2,...,ik 的值为f(i1+i2+...+ik-k+1) f为斐波那契数列 求该超立方体的所有元素 ...

  8. ASP.NET自定义控件入门Demo

    最近看了MSDN关于自定义控件的介绍,根据官方的文档,自己学着做了一个简单的Demo给需要的朋友参考. ASP.NET 源生的TextBox是不带Label标签的,这里我要实现的是创建一个带Label ...

  9. EntityFramework简单例子

    @(编程) 这个例子是用vs2013连接mysql数据库. 1. NuGet安装EF和mysql 略 2. 对象 namespace EFDemo { class Student { public s ...

  10. C++视频课程小结(3)

    C++远征之封装篇(上) 章节介绍: 每章小结: 第一章:课程介绍. 按照惯例是章节的总介绍,内容明显多了很多(为了做作业我还要赶进度的说),主要说了:类和对象是本章的主角,然后还有很多配角,像数据成 ...