案例讲解

一,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. 夏令营讲课内容整理 Day 5.

    DP专场.. 动态规划是运筹学的一个分支, 求解决策过程最优化的数学方法. 我们一般把动态规划简称为DP(Dynamic Programming)   1.动态规划的背包问题 有一个容量为m的背包,有 ...

  2. Dapper入门教程(二)——执行非查询语句

    描述 你可以从任意实现IDbConnection的类对象中调用Dapper的扩展方法"Execute".它能够执行一条命令(Command)一次或者多次,并返回受影响的行数.这个方 ...

  3. QT开发应用程序的欢迎界面

    主界面启动太慢,通常要10秒以上,所以想加个欢迎界面,等程序加载好再显示主界面. 主界面(类名为MainWindow)启动慢的原因是构造函数需要执行大量初始化的工作. 创建了Welcome类作为欢迎界 ...

  4. MySQL统计函数记录——按月、按季度、按日、时间段统计

    按年汇总,统计:select sum(mymoney) as totalmoney, count(*) as sheets from mytable group by date_format(col, ...

  5. 存个emacs配置

    emacs配置 (global-set-key [f9] 'compile-file) (global-set-key [f10] 'gud-gdb) (global-set-key (kbd &qu ...

  6. 【应知应会】15个常用的JavaScript字符串操作方法

    1 初始化 //常用初始化方法 var stringVal = "hello iFat3"; //构造函数创建方法 var stringObj = new String(" ...

  7. easyui+ajax获取同表关联的数据

    easyui是我们常用的前端框架之一,easyui的使用使得前端页面更加美观.为了能够使用combobox,ajax必须同步. 该小程序是使用ssm框架,对数据库的数据进行查询,所以url对应着map ...

  8. centos 6.* 配置端口

    vi /etc/sysconfig/iptables 将 -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT     (允 ...

  9. web自动化一(selenium+python+pycharm环境搭建)

    年前公司刚刚搭起了web自动化测试框架的环境,趁着过完年还没全部忘掉,准备把如何搭建环境的方法和大家分享下,有哪里不对的地方,请批评指正,共同进步,共勉! 为此我把搭建环境所需的软件打包上传到百度云, ...

  10. MyISAM 和InnoDB 讲解

    1.InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定. 2.基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持. ...