我有这个功能:
$('.trackInputHours').change(function() {
var changeVal=$(this).val();
$(this).closest('.trackOn').nextAll('.trackOn').find('.trackInputHours').val(function(i, v){
if((v=='??') || (v<changeVal)) {
return changeVal;
}
});
});
我希望在nextAll()
时暂停v==changeVal
;保留这些元素的旧值。
一种} else break
;
我该怎么做?
答案 0 :(得分:3)
如何使用.each()
并使用return false
来停止迭代。
$('.trackInputHours').change(function() {
var changeVal=$(this).val();
$(this).closest('.trackOn').nextAll('.trackOn').find('.trackInputHours').each(function(){
var v = $(this).val();
if((v=='??') || (v<changeVal)) {
$(this).val(changeVal);
}
if(changeVal == v){
return false;
}
});
});
<强> Example on jsfiddle 强>
输入5,它会更改所有<input type="text"/>
,直到达到5
答案 1 :(得分:2)
也许代替nextAll,nextUntil函数可以做你想要的吗?