我想通过所有的kendodatepicker元素迭代。我把它上班了,但似乎非常丑陋。有更好的方法吗?
var aryNewCalendar = [];
$(".g-datepicker").each(function () {
var id = $(this)[0].id;
if (id.substring(0,2) === "dp")
{
aryNewCalendar.push({
Text: $(this)[0].value
});
}
});
return aryNewCalendar;
我正在用" .g-datepicker'类迭代所有元素,但看来"包装器"也被识别出来。
我不喜欢整个 $(this)[0] .id 方法,似乎"不稳定"。
$(this)[0].id;
与执行 this.id
相同,而在 $()
中首先包装 this
,然后将其从结果的jQuery对象中拉出。与$(this)[0].value
只做this.id
和this.value
。
没有理由会不稳定,只有冗余
根本不清楚您的意思是"还标识了包装器"
您也可以将其简化为:
var aryNewCalendar = $(".g-datepicker[id*=dp]").map(function(){
return {
Text: this.value
}
}).get()
这假定该类中的其他ID都不包含" DP"