脚本剪掉最后一个字符

时间:2017-09-21 10:24:04

标签: javascript jquery razor

在剃刀视图中,我使用Html.EditFor。

@Html.EditorFor(model => model.Salary, new { htmlAttributes = new { id = "SalaryEdit", @class = "form-control", onkeypress = "myFunction()" } })

脚本

 function myFunction() {
                var source = $('#SalaryEdit');
                console.log($("input[id^='SalaryEdit']").val());
            }

当我输入EditorFor时,例如:1,23。它只显示1,2。它总是削减最后一个字符。是什么原因?

2 个答案:

答案 0 :(得分:0)

使用onkeypress事件而不是onkeypress。 onkeyup将在用户完成文本输入后显示输入值。 keypress会在用户输入任何内容时显示它的值。

答案 1 :(得分:0)

$("#SalaryEdit").on("keyup",function(){
   var  str=$(this).val().split('.');
   var val='';
   if(str.length>1)
     val =(str[1].length>1) ?str[0]+'.'+ str[1].substring(0, str.length-1):str[0]+'.'+str[1];
   else
     val =str[0];
   $(this).val(val);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="SalaryEdit" type="text"/>