Javascript 如果输入字段达到初始值,则禁用减量按钮

Javascript 如果输入字段达到初始值,则禁用减量按钮,javascript,html,jquery,Javascript,Html,Jquery,我使用下面的代码将输入字段递增和递减1。我需要在默认情况下禁用减号(-)按钮。如果初始值为5,则用户不应将该值减小到5以下。如果它们变为6,则启用减号按钮以减小。但是,它们的减少不应少于5 代码有时会起作用。随机地,按钮被禁用,甚至不能从10减少到9、8、7 请让我知道此解决方案是否有效或是否需要更改任何其他解决方案 让$noofpaxinput=$('txtnoofpax'); $noofpaxinput.val(5); 让intialvalue=$noofpaxinput.val(); $

我使用下面的代码将输入字段递增和递减1。我需要在默认情况下禁用减号(-)按钮。如果初始值为5,则用户不应将该值减小到5以下。如果它们变为6,则启用减号按钮以减小。但是,它们的减少不应少于5

代码有时会起作用。随机地,按钮被禁用,甚至不能从10减少到9、8、7

请让我知道此解决方案是否有效或是否需要更改任何其他解决方案

让$noofpaxinput=$('txtnoofpax');
$noofpaxinput.val(5);
让intialvalue=$noofpaxinput.val();
$('.noofpax')。单击(函数(){
if($(this).hasClass('increasepax')){
$noofpaxinput.val(parseInt($noofpaxinput.val())+1);
$('.decreasepax').prop('disabled',false);
}else if($noofpaxinput.val()>=intialvalue){
让getPaxVal=$noofpaxinput.val(parseInt($noofpaxinput.val())-1);

如果(getPaxVal,则需要在click函数事件中检查.txtnoofpax的值,以便在用户每次单击时获取该值

然后你需要在你最后的状态下使用一个else

var noofpaxinput=$('#txtnoofpax'),noofpaxinputitival=$(noofpaxinput.val();
$(noofpaxinput).on(“输入”,函数(){
选中noofpaxinput($(noofpaxinput.val(),noofpaxinputitival);
});
$('.noofpax')。单击(函数(){
var txtnoofpaxValue=$(noofpaxinput.val();
if($(this).hasClass('increasepax')){
$(noofpaxinput).val(parseInt(txtnoofpaxValue)+1);
}else if($(this).hasClass('decreasepax')){
$(noofpaxinput).val(parseInt(txtnoofpaxValue)-1);
}
选中noofpaxinput($(noofpaxinput.val(),noofpaxinputitival);
});
函数checkNoOffaxInput(fromValue、Tovalue){

如果(parseInt(fromValue),您可以监听输入更改并检测是否禁用减少按钮

请记住
parseInt
,因为您的
输入类型是文本。如果您不分析它,
'10'<'5'
将返回true

让$noofpaxinput=$(“#txtnoofpax”)
$noofpaxinput.val(5)
让intialvalue=$noofpaxinput.val()
$noofpaxinput.on('change',function(){

如果(Number($noofpaxinput.val())现在再次检查plz:)因为我知道您只想用按钮更改值,请再次检查它是否正确,现在请“再次检查” — 请先说。这里需要重新考虑逻辑。为什么这个条件只出现在减号按钮单击的分支中?换句话说,为什么
$('.decreasepax').prop('disabled',false)
只需点击加号按钮即可无条件执行?无论如何,OP已经接受了这个答案,所以这不是什么大问题。在这段代码中可能会有更多潜在的bug需要指出。现在更好了!