我有一个class = class1的输入tag1和另一个class = class2的tag2。输入值是数字。当tag1中的值发生更改时,我希望将tag2的值更改为tag1值的一半。除非tag1值具有逗号(例如,1,000),否则以下工作。我正在使用正则表达式删除逗号,但当tag1值大于999
时它仍然无效$('.class1').change(function () {
$('.class2').val(parseInt($('.class1').val().replace(/,/g, '')) / 2).change();
});
这是一个ASP.NET MVC 4应用程序,这里是tag1和tag2的一个例子。:
@Html.TextBox("txt_Fees","",new{ @class="class1"})
@Html.TextBox("txt_HalfFees","",new{ @class="class2"})
答案 0 :(得分:0)
您可以尝试将费用值限制为仅限数字,如下所示:
<input type="text" class="class1" name="txt_Fees" />
<input type="text" class="class2" name="txt_HalfFees" />
(function($){
var $fee = $('.class1'),
$halfFee = $('.class2'),
numsOnly,
handleFeeChange;
numsOnly = function(){
var val = this.value.replace(/[^0-9]/g, '');
this.value = val;
};
handleFeeChange = function() {
var val = this.value;
$halfFee.val(val / 2);
};
$(function(){
$fee
.on('keydown keyup', numsOnly)
.on('change', handleFeeChange);
});
})(window.jQuery);