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 里面有很多公共方法,比如格式化日期,或者计算两个浮点数的除法之类的。我都看不懂。。