JS条件

时间:2016-05-17 16:34:46

标签: javascript jquery forms validation

我一直在对表单进行疑难解答,该表单允许用户选择金额或选择其他金额。点击时的其他金额将金额更改为$ 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);
}

此处参考实际表格。非常感谢帮助。 https://secure.pva.org/site/c.ajIRK9NJLcJ2E/b.9381225/k.8668/FY2016_March_Congressional/apps/ka/sd/donorcustom.asp

1 个答案:

答案 0 :(得分:1)

您可以将input 类型设置为number指定minmaxrequired属性,然后检查有效性它通过javascript / jQuery。

function myFunction() {
    var inpObj = $("#id1")[0];
    if (inpObj.checkValidity() === false) {
        $("#demo").html(inpObj.validationMessage);
    } else {
       $("#demo").html(inpObj.value); 
}
}
$('button').on('click',function(){
myFunction();
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="id1" type="number" min="5" max="300" required>
<button>OK</button>

<p id="demo"></p>