Javascript 如何确保每个输入字段的值都大于以前输入的值?

Javascript 如何确保每个输入字段的值都大于以前输入的值?,javascript,jquery,validation,Javascript,Jquery,Validation,如何确保每个字段的值都大于以前输入的值?如果条件为真,那么我可以提交一份表格 $('add')。在('click',function()上{ $(“#框”)。追加(“”); }); 您需要在所有输入中循环,保留上一个的值以进行比较。请记住,您当前的“添加输入”代码将为所有输入提供相同的名称,这将导致在操作页面上使用时出现问题。您可以使用数组来实现这一点 $(“#添加”)。在(“单击”,函数(){ $(“#框”)。附加(“”); }); $(“表格”)。提交(功能(e){ return hig

如何确保每个字段的值都大于以前输入的值?如果条件为真,那么我可以提交一份表格

$('add')。在('click',function()上{
$(“#框”)。追加(“”);
});

您需要在所有
输入中循环,保留上一个的值以进行比较。请记住,您当前的“添加输入”代码将为所有输入提供相同的名称,这将导致在操作页面上使用时出现问题。您可以使用数组来实现这一点

$(“#添加”)。在(“单击”,函数(){
$(“#框”)。附加(“”);
});
$(“表格”)。提交(功能(e){
return higherThanBefore();//根据验证发送
});
函数高级于()之前{
var lastValue=null;
var valid=true;
$(“输入[name^=val]”)。每个(函数(){
var val=$(this.val();
如果(lastValue!==null&&lastValue>=val){//不高于之前,则无效
有效=错误;
}
lastValue=val;
});
return valid;//如果我们到了这里,它就是有效的
}

增加一行,更改一行。只需获取最后一个输入的值,并将其用作新输入的最小值

$('add')。在('click',function()上{
//获取当前的最后一个输入,保存其值。
//这将用作新el的最小值
var newMin=$(“#框”).find(“.p1输入”).last().val()| 1;
//追加新的div,但将min值设置为
//我们刚刚保存的价值。
$(“#框”)。追加(“”);
$(“.p1输入”).on(“键控鼠标”,函数(){
var triggeringEl=$(此);
if(triggeringEl.val()>=triggeringEl.attr(“min”)){
triggeringEl.removeClass(“错误”);
}
triggeringEl.parent().nextAll(.p1”).children(“输入”).each(函数()){
if($(this.attr(“min”)
。错误{
边框:1px纯红;
}

您可以使用:对于每个输入字段,您可以测试下一个字段的值是否大于当前字段

$('add')。在('click',function()上{
var idx=$('#box').find('div[id^=p]').length;
$(“#框”)。追加(“”);
});
$('form')。关于('submit',函数(e){
var cachedValues=$('form[type=number]');
var noorderespected=cachedValues.filter(函数(idx,ele){
var nvalue=cachedValue.eq(idx+1.val();
返回(+ele.value<(+nvalue | |+ele.value+1))?false:true;
}).长度;
log('noorderespected:'+noorderespected);
如果(未经检查>0){
e、 预防默认值();
}
})


您尝试过什么?您可以使用获取输入元素上的值。增加每个框的
id
,然后添加一个
onblur
onchange
事件,该事件为每个框触发,并测试
id
s低于自身的框的值以进行验证。处理相应的验证错误我还没有尝试过,因为我不确定如何处理。@SvenSurfer@Milk谢谢你的想法,我会尝试一下谢谢你的回复,你能告诉我为什么你从输入中删除了数组字段吗?我没有删除任何内容?我添加了我现在写的数组字段。好的,谢谢你的回答和你的努力,非常感谢。为什么你需要循环所有的输入?如果在添加字段时更新每个字段的最小值,则只需查看最后一个字段,对吗?因为这样,在添加新字段之前,我将依赖用户输入其值。也许用户(当然是我累了的时候:)会多次单击添加输入,然后输入值。这是一个很好的答案!不过,我会尝试在每次任何输入发生更改时更新最后一个值,以确保即使用户在添加更多输入后更改了值,它也能正常工作。