案例讲解

一,html片段

   <div class="page-upload">
      <div class="tab-wrapper2">
             <span>交易结果通知</span>
         </div>
         <form id="submitForm" action="" method="post">
         <input type="hidden" id="wxOpenId" name="wxOpenId" value="${wxOpenId}"/>
             <ul class="info-list">
             <#list switchList as switch>
                 <li class="info-list-li">
                     <label >${switch.messageTypeDesc}</label>
                     <div class="li-right">
                         <div id='isUniform_${switch.messageTypeCode}' messageTypeCode="${switch.messageTypeCode}"  class="slide-block slide-right" onclick="loadSwitch(this);">
                             <div class="slide-block-ball"></div>
                              <input type="hidden" id="isUniformSocialCredit_${switch.messageTypeCode}" name="isUniformSocialCredit_${switch.messageTypeCode}" value="${switch.messageSwitch}" />
                         </div>
                     </div>
                 </li>
             </#list>
             </ul>
         </form>
     </div>

二,js的脚本

 function loadSwitch(that){
     console.info(that);
     var isUniformSocialCredit_Val=$(that).find("input").attr("value");
     var isUniformSocialCredit_Id=$(that).find("input").attr("id");
     var isUniformSocialCredit_Name=$(that).find("input").attr("name");
     var isUniform_Id=$(that).attr("id");
     var isUniform_class=$(that).attr("class");
     var messageTypeCode=$(that).attr("messageTypeCode");
     var openId=$("#wxOpenId").val();
        if (isUniform_class.indexOf('slide-right') > -1) {
            var url = '${rc.contextPath}/switchOff.htm';
           var messageTypeCode=
             $.ajax({
                 url: url,
                 type: 'POST',
                 dataType: 'json',
                 data: {"messageTypeCode": messageTypeCode, "openId": openId},
                 async: false,
                 success: function(data){
                     if ("000" == data.code) {
                         $("#" + isUniform_Id + "").removeClass("slide-block slide-right");
                         $("#" + isUniform_Id + "").addClass("slide-block");
                         $("#" + isUniformSocialCredit_Id + "").val('0');
                     } else {
                         alert("关闭失败");
                     }
                 }
             });
            

三,分析代码

3.1,

这个时候我们有一个点击事件loadSwitch,注意这个loadSwitch方法是由参数的就是this,那么这个this是什么呢。我们通过console.info(that);(注意这里不能用this关键字的,包括function loadSwitch(that)这里的that是不能用this关键字的要注意了。

我们可以看到它把这个div里面的所有的内同都给打印了出来。,

3.2

这个时候我们想获取div里面的id的值 ,或者class的值,甚至可以自己随便定义一个比如messgetypecode等都可以通过

var isUniform_Id=$(that).attr("id");
var isUniform_class=$(that).attr("class");
var messageTypeCode=$(that).attr("messageTypeCode");

这种方式来获取就行了。

3.3

console.info($(that).find("input"));

这个字段是什么呢,因为我们发现这个标签里面有个input标签所以我们用find的属性

打印出来的是这个。

3.4,

那么重点来了,这个时候我们想要获取什么参数直接用attr就行了,比如我们想要获取里面的baseURL的值,直接如下面的写法就行了。

$(that).find("input").attr("baseURL")

我们想获取value的值直接

$(that).find("input").attr("value")就行了。

总结

这种通过console.info来查看元素,并且通过find("标签").attr("属性")来获取属性值的方法,有点类似于java中Eclipse中类.方法来查看都有什么的意味,相信这种方法以后应该会常用的。

页面jquery调试的一个宝贵经验(类似于Eclipse中的写出一个对象点它的方法时候用alt加/可以跳出来它所有的方法)的更多相关文章

  1. 关于 OnCloseQuery: 顺序、不能关机等(所有的windows的广播消息都是逐窗口传递的)——如果一个窗体的OnCloseQuery事件中如果写了代码那么WM_QUERYENDSESSION消息就传不过去了msg.result会返回0,关机事件也就停止了

    系统关闭窗体的事件顺序为: OnCloseQuery ----> OnClose ----> OnDestroy 下面的代码说明问题: unit Unit3; interface uses ...

  2. Android Studio中有没有类似于Eclipse中的ctrl+2+L的快捷键? \Android Studio快捷键之代码提示

    问:Android Studio中有没有类似于Eclipse中的ctrl+2+L的快捷键? 答:有,as中的快捷键是Ctrl+Alt+V AndroidStudio和Eclipse常用快捷键对比 功能 ...

  3. FOC中电流环调试的宝贵经验总结(有理有据+全盘拖出)

    你是否经历过一个人独自摸索前进磕磕碰碰最终体无完肤,然后将胜利的旗帜插到山顶的时刻,如果有,本文也许能帮你在调试FOC电流环的时候给你带来一些帮助和思路. 如果本文帮到了您,请帮忙点个赞

  4. 利用LineRenderer画出一个圆,类似于lol中的攻击范围

    http://www.unity蛮牛.com/blog-5945-1409.html 本人大四狗,学unity半年有余,写此文章纯粹记录自己的心得. 废话不多说,进入主题.... 效果如图: 首先要理 ...

  5. 一个Maven项目在eclipse中正常,但在IDEA中启动时报错

    这个项目十有八九最初是在ecplise创建的,框架上十有八九整合了Mybatis,报的错误十有八九是 org.apache.ibatis.binding.BindingException: Inval ...

  6. js中的写出想jquery中的函数一样调用

    1.IIFE: Immediately-Invoked function Expression 函数模块自调用 2.代码实现 <!DOCTYPE html> <html lang=& ...

  7. java系列: 在eclipse中调试时,输入的jsp或者servlet页面的地址要区分大小写

    比如在当前web工程中有一个jsp页面的名字是: Welcome.jsp 在eclipse中调试时,如果在浏览器中输入: http://localhost:8080/MavenWeb/welcome. ...

  8. 写出易调试的SQL

    h4 { background: #698B22 !important; color: #FFFFFF; font-family: "微软雅黑", "宋体", ...

  9. Fitnesse在eclipse中的调试

    需要在Fitnesse的wik中添加: '''此句话专门用来Debug'''!define COMMAND_PATTERN {java -Xdebug -Xrunjdwp:transport=dt_s ...

随机推荐

  1. BZOJ 3530: [Sdoi2014]数数 [AC自动机 数位DP]

    3530: [Sdoi2014]数数 题意:\(\le N\)的不含模式串的数字有多少个,\(n=|N| \le 1200\) 考虑数位DP 对于长度\(\le n\)的,普通套路DP\(g[i][j ...

  2. BZOJ 1845: [Cqoi2005] 三角形面积并 [计算几何 扫描线]

    1845: [Cqoi2005] 三角形面积并 Time Limit: 3 Sec  Memory Limit: 64 MBSubmit: 1151  Solved: 313[Submit][Stat ...

  3. 原创~vue router-link添加点击事件

    在学习vue中会遇到给router-link添加@click,@mouseover等事件 我想要做的是用v-for循环输出导航菜单,但是下面代码的@click事件和@mouseover并不会响应 &l ...

  4. [转载]LVS+Keepalived之三大模式

    LVS + Keepalived之三大模式 ============================================================================== ...

  5. Java经典编程题50道之二十四

    有5个人坐在一起,问第5个人多少岁,他说比第4个人大2岁.问第4个人岁数,他说比第3个人大2岁. 问第三个人,他说比第2人大两岁.问第2个人, 说比第一个人大两岁.最后问第一个人,他说是10岁. 请问 ...

  6. 用原生js实现一个new方法

    首先写一个父类方法(包含参数name,age): function Person(name,age){ this.name = name; this.age = age; } new一个Person的 ...

  7. mysql存储引擎、事务

    MySQL存储引擎介绍 文件系统 操作系统组织和存取数据的一种机制. 文件系统是一种软件. 文件系统类型 ext2  ext3  ext4  xfs 数据 不管使用什么文件系统,数据内容不会变化 不同 ...

  8. 使用Netbeans内置的Git工具

    在 NetBeans IDE 中使用 Git 支持 NetBeans IDE 为 Git 版本控制客户端提供支持.通过利用 IDE 的 Git 支持,您可以从 IDE 内的项目中直接执行版本控制任务. ...

  9. 利用alias在Linux下设置命令别名

    alias          //自定义命令="Linux命令"   alias          //查看当前系统里所有的自定义命令 unalias         //自定义命 ...

  10. iOS实现从服务器请求json数据并转化成NSDictionary

    NSURL *url = [NSURL URLWithString:URL]; NSURLRequest *request = [NSURLRequest requestWithURL:url cac ...