Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JS条件故障排除_Javascript_Jquery_Forms_Validation - Fatal编程技术网

Javascript JS条件故障排除

Javascript JS条件故障排除,javascript,jquery,forms,validation,Javascript,Jquery,Forms,Validation,我一直在对一个允许用户选择金额或其他金额的表单进行疑难解答。单击其他金额时,将金额更改为5美元。我试图得到它,这样,如果说用户试图输入一个数字,如10,15或20作为例子,它将允许他们键入它。目前,它正在将小于5的起始数字转换为5,这使得它不可能 $("#donrAmountInput").on("input", function() { setDonrAmount("Other"); }); function setDonrAmount(id) { var amt; $('#d

我一直在对一个允许用户选择金额或其他金额的表单进行疑难解答。单击其他金额时,将金额更改为5美元。我试图得到它,这样,如果说用户试图输入一个数字,如10,15或20作为例子,它将允许他们键入它。目前,它正在将小于5的起始数字转换为5,这使得它不可能

$("#donrAmountInput").on("input", function() {
  setDonrAmount("Other");
}); 

function setDonrAmount(id) {
  var amt;
  $('#donrAmountButtons .active').removeClass('active');

  if (id == "Other") {
    amt = $("#donrAmountInput").val() > 5 ? $("#donrAmountInput").val() : 5;
    $('#otherAmount button').addClass('active');
  }
  else {
    amt = id.substring(10);
    $('#donrAmount' + amt).addClass('active');
  }

  $('input#donrAmountInput').val(amt);
  $('input#donrAmountInput').change();
  $('#donrReviewAmount').html(amt);
}

以下是实际表格供参考。非常感谢您的帮助

您可以将
输入设置为
number
指定
min
max
必需的
属性,然后通过javascript/jQuery检查其有效性

函数myFunction(){
var inpObj=$(“#id1”)[0];
if(inObj.checkValidity()==false){
$(“#demo”).html(inpObj.validationMessage);
}否则{
$(“#demo”).html(inpObj.value);
}
}
$('button')。在('click',function()上{
myFunction();
})

好啊

那么您的问题在这一行
amt=$(“#donrAmountInput”).val()>5$(#donrAmountInput”).val():5表示如果值大于5,则使用它,否则将其设置为5。这是正确的。我知道我把小于5的设置为5,但我不明白为什么它不让我输入20。因为当你在“20”中输入“2”时,它会看到小于“5”。无论何时对输入进行任何更改,您都要进行检查。我理解这一点。我在想如何只在2个回合后触发它