我真的坚持使用这个jquery解决方案。我创建了一些数组,其最终目标是将字符串存储在两个数组newDateAndTime = []和oldDateAndTime = []中。我试图检查数组是否相似,但没有找到工作的例子,所以我决定检查一个数组中的每个索引与另一个数组的相同索引。使用alert我可以看到newDataAndTime中的相同数据也在oldDateAndTime中,但是当我循环使用它时:
if (newDateAndTime[x] == oldDateAndTime[x])
alert("Same");
else alert("Not Same");
我得到了一些相同的元素,有些甚至不是当我用警报测试它们时它们显示相同的数据。有没有更好的方法来比较两个数组的元素?我为巨大的代码块道歉,但我会为了完整性而将其全部发布。我主要关注的是我尝试比较数组的结尾。谢谢你的帮助。
<script type="text/javascript">
$(function () {
$("#date").datepicker();
$('input[name=date]').datepicker();
var dateInput = $("select[name='searchString']");
var checkedindex = [];
var classdate = [];
var classtime = [];
var dayofclass = [];
var newDateAndTime = [];
var oldDateAndTime = [];
$("input[name='selectedCourses']").each(function (i) {
if (this.checked) {
checkedindex.push(parseInt(i));
}
});
for (var x = 0; x < checkedindex.length; x++) {
var ind = checkedindex[x];
var dateofclass = $(".TextBoxDate:eq(" + ind + ")");
var timeofclass = $(".TextBoxTime:eq(" + ind + ")");
var classday = $("select[name='searchString']:eq(" + ind + ")");
classdate.push(dateofclass);
classtime.push(timeofclass);
dayofclass.push(classday);
oldDateAndTime = dayofclass[x].val() + classtime[x].val();
alert(oldDateAndTime.toString());
}
$("#saveBtn").click(function () {
for (var x = 0; x < checkedindex.length; x++) {
var ind = checkedindex[x];
var dateofclass = $(".TextBoxDate:eq(" + ind + ")");
var timeofclass = $(".TextBoxTime:eq(" + ind + ")");
var classday = $("select[name='searchString']:eq(" + ind + ")");
classdate.push(dateofclass);
classtime.push(timeofclass);
dayofclass.push(classday);
newDateAndTime = dayofclass[x].val() + classtime[x].val();
if (newDateAndTime[x] == oldDateAndTime[x])
alert("Same");
else alert("Not Same");
}
});
});
</script>