文本框中的Keyup事件显示出一些延迟

时间:2016-07-18 09:31:46

标签: javascript jquery jquery-ui datatable datatables

我有一个数据表有六列,最后一列有文本框。数字类型的文本框如下:

$('input.payment').on("change paste keyup", function(event) {
     var max = parseFloat($(this).attr('max'));
     var num = parseFloat($(this).val());

   //First Validation
    if ( num >= max) {
         $(this).val("99999.99");
    }  

   //Third Validation
    var totalAmount = $(this).closest('tr').find(".total-due-class").html();
    if($(this).val() < totalAmount)
    {
        alert("Error");
    }

 //Restrict user to enter only two digits after decimal point
     var number = ($(this).val().split('.'));
    if (number[1] && number[1].length > 2){
         var amount = parseFloat($(this).val());
          $(this).val( amount.toFixed(2));
    }
 }); 

现在我需要对keyup事件应用3次验证:

  1. 最大值可以是99999.99。
  2. 不允许用户在小数点后输入2位以上的数字。
  3. 如果用户输入的值小于其第五列相应值的值,则必须显示警告声明。
  4. 所以我把jQuery代码放在下面。前两个验证工作完全没有任何延迟。但第三次验证显示延迟。

    for (String key : stocks.keySet()) {
        multipleStocks=multipleStocks.replaceAll(key, "<a "+stocks.get(key)+">$0</a>");
    }
    
    System.out.println(multipleStocks);
    

0 个答案:

没有答案