考虑到转换为数组的一周中的日期列表,我可以在点击它时从数组中提取其中任何一个的值。 但是,我找不到任何关于如何删除数组中单击的值之后的所有值的信息:
public static int variable;
CommonClassName.variable = 1;
和#saturday
如果您知道怎么做,请告诉我,并提前感谢您的时间和关注。
HTML:
#sunday
jQuery的:
friday
答案 0 :(得分:3)
您可以在数组中找到元素位置:
var elementPosition = floorIds.indexOf('#'+$(this).attr('id'));
然后将数组长度设置为索引+ 1
floorIds.length = elementPosition + 1; //as index are zero based
$('ul li').on('click', function() {
var floorIds = new Array('#monday', '#tuesday', '#wednesday', '#thursday', '#friday', '#saturday', '#sunday');
var elementPosition = floorIds.indexOf('#'+$(this).attr('id'));
floorIds.length = elementPosition + 1;
console.log(floorIds)
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li id="monday">Monday</li>
<li id="tuesday">Tuesday</li>
<li id="wednesday">Wednesday</li>
<li id="thursday">Thursday</li>
<li id="friday">Friday</li>
<li id="saturday">Saturday</li>
<li id="sunday">Sunday</li>
</ul>
&#13;
答案 1 :(得分:1)
您只需尝试jQuery Documentation的.nextAll()函数。
$('#friday').nextAll('li').remove();
答案 2 :(得分:0)
您可以使用splice从数组中删除元素范围。
以下是相同的代码段:
var floorIds = new Array('#monday', '#tuesday', '#wednesday', '#thursday', '#friday', '#saturday', '#sunday');
$('ul li').on('click', function() {
var which = $(this).attr('id');
var index = floorIds.indexOf('#'+which);
var newArray = floorIds.splice(index + 1, floorIds.length - index);
});
答案 3 :(得分:0)
您可以使用indexOf
查找数组中值的位置,然后使用slice
来删除该索引之外的其余值。
var floorIds = new Array('#monday', '#tuesday', '#wednesday', '#thursday', '#friday', '#saturday', '#sunday');
$(function() {
$('ul li').on('click', function() {
var day = $(this).attr('id');
var newArray = floorIds.slice(0, floorIds.indexOf("#"+day)+1);
console.log(newArray);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li id="monday">Monday</li>
<li id="tuesday">Tuesday</li>
<li id="wednesday">Wednesday</li>
<li id="thursday">Thursday</li>
<li id="friday">Friday</li>
<li id="saturday">Saturday</li>
<li id="sunday">Sunday</li>
</ul>
答案 4 :(得分:0)
在Javascript中,我们有一个子集Array的切片方法。请在下面的chages
var floorIds = new Array('#monday', '#tuesday', '#wednesday', '#thursday', '#friday', '#saturday', '#sunday');
$('ul li').on('click', function() {
var which = $(this).attr('id);
var index = floorIds.indexOf('#'+which); //Will give the index of Element
var newArray = floorIds.slice(0, index); // Slice will provide the subset array of given indexs
});
答案 5 :(得分:0)
$(document).on('click','ul li',function(){
var array = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];
var index = array.indexOf($(this).text());
array.length=index+1;
});