1、用字典判断数组是否有重复
function ticketTypeValidate() {
var ticketArr = [];
var tickettype = $("div[name='tickettype']");
for (var a = 0; a < tickettype.length; a++) {
var person = tickettype.eq(a).find("#ticketperson").find("option:selected").val();
var tickettime = tickettype.eq(a).find(".ticket_time").find("option:selected").val();
var price = tickettype.eq(a).find(".price").val();
ticketArr.push({
Person: person,
Tickettime: tickettime,
Price: price
});
}
var ticketKeys = {};
for (var i = 0; i < ticketArr.length; i++) {
var ticket = ticketArr[i];
var ticketKey = ticket.Person + "-" + ticket.Tickettime;
if (ticketKeys.hasOwnProperty(ticketKey)) {
alert("票型有重复!");
return false;
}
else {
ticketKeys[ticketKey] = "";
}
}
}
2、拼接url参数
location.search链接的查询条件
hasOwnProperty:是用来判断一个对象是否有你给出名称的属性或对象。不过需要注意的是,此方法无法检查该对象的原型链中是否具有该属性,该属性必须是对象本身的一个成员。
isPrototypeOf:是用来判断要检查其原型链的对象是否存在于指定对象实例中,是则返回true,否则返回false。
encodeURIComponent该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。
其他字符(比如 :;/?:@&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的
location.href = location.href.replace(location.search, "") + "?" + serializeToUrlParams(getdata());
obj json数组
function serializeToUrlParams(obj) {
var urlParams = [];
for (var key in obj) {
if (obj.hasOwnProperty((key)) && !webExpress.utility.string.isNullOrEmpty(obj[key])) {
urlParams.push(key + "=" + encodeURIComponent(obj[key]));
}
}
return urlParams.join("&");
}
3、判断checkbox和radio被选中
if (radios[i].checked == true)
if(radio[i].prop("checked")==true)
原生的document对象的获取
if(radio[i]).attr("checked")==true)
定义的属性判断
4、jQuery.html() 是获取当前节点下的html代码,并不包含当前节点本身的代码,然而我们有时候的确需要,可以通过jQuery.prop("outerHTML")的方式设置。