0417_jq_data()属性

如果一组按钮,或者说一组相同的数据要实现同样的功能,或者说是类似的方法。都可以使用用-data-*绑定到元素上去
发现这个是在别人写旅游订单详情页面的时候,根据不同的订单状态,显示不同的按钮,然后的话这些按钮点击之前都有提示,“是否XXXX?”
如果是现在的我的话,估计会写很多的点击方法,onclick( ),然后支付一个方法,取消一个方法,返回一个方法,然后付款一个方法。。。等等。
今天学习到了一个新的方法:
<button data-confirmmsg="确认xxxx?" data-action="CANCEL" onclick="process($(this))"></button>

然后,在js之中用if判断:

    var action = $(obj).data("action");
    if(action=='BACK'){
    ...
    }else if(action=='CANCEL'){
    ...
  }
}```
还有,关于弹框,后台和前台的弹框是不一样的。但是都用了一个转码的方法。后台是用的common里面自定义的弹框,应该是jq方面的;前台是用得layer,弹出页面层。
他们共同的方法是这样的:
```htmlDecode:function (text){
            //1.首先动态创建一个容器标签元素,如DIV
            var temp = document.createElement("div");
            //2.然后将要转换的字符串设置为这个元素的innerHTML(ie,火狐,google都支持)
            temp.innerHTML = text;
            //3.最后返回这个元素的innerText(ie支持)或者textContent(火狐,google支持),即得到经过HTML解码的字符串了。
            var output = temp.innerText || temp.textContent;
            temp = null;
            return output;
        }```
common.js 里面有很多公共方法,比如格式化日期,或者计算两个浮点数的除法之类的。我都看不懂。。
posted @ 2017-04-17 16:12  齐刘海毁灭世界  阅读(139)  评论(0编辑  收藏  举报