我有一个表单设置,动态字段只有在用户需要时才会添加。
我需要能够在jquery中回发之前验证字段(如果它们在那里)。字段是整数,我真正想要做的是添加动态字段的总和,以确保它们大于x数字。
但是就我可以解决的问题而言,我无法获得该领域的价值,因为它还不在DOM中。
我创建了JSFiddle来证明问题。我想在onblur事件中添加值,但不幸的是,它不能点击主提交按钮。
以下是一些代码
$(document).on('blur', '.rent-percent', function () {
var id = this.id;
console.log(this);
var value = $('#' + id).val()
$('#total').append(value * count);
});
答案 0 :(得分:0)
试试这个,确保你没有使用过时的jQuery版本:
$(document).on('blur', '.rent-percent', function () {
if(!$.isNumeric($(this).val())){
$(this).val('');
return alert('Not a Number!');
}
var c = 0;
$('.rent-percent').each(function(){
c += parseInt($(this).val());
});
$('#total').html('<h3>Total</h3>'+c);
});
答案 1 :(得分:0)
您遇到的部分问题是您生成的ID值中包含方括号字符。 HTML4规范仅允许使用字母,数字,连字符和下划线。根据我的经验,jQuery存在与不符合的ID有问题。尝试修复id值,看看是否允许您查看字段的值。它们属于DOM,因为它们是页面的一部分。