我有一组动态生成的输入,并且它们的ID会根据数组中的项目数递增
$("#btn_post").click(function(e){ //send message button id
$('#ajax_loader').show();
$.ajax({
url:'messages/insert_group_messages',
type: "POST",
data: $('#frmGroupMessage').serialize(),
dataType: "text",
success: function(){
$('#messages').load('group_name/new_messages/'+$('#group_id').val()).fadeIn("slow");
$('#messages').scrollTop($('#messages')[0].scrollHeight); // i tried this to scroll down but its not working.
$('#ajax_loader').hide();
},
error:function (xhr, ajaxOptions, thrownError){
alert(thrownError);
}
});
e.preventDefault();
});
我正在尝试使用JQuery循环遍历所有生成的输入以确保它们不为空
答案 0 :(得分:0)
尝试使用此 -
您可以在此处使用表格ID替换table
- $('#tableId :input')
$('table :input').each(function(){
//Enter your code to validate input
console.log($(this).attr('name') + " : " + $(this).val());
});
答案 1 :(得分:0)
试试这个代码段。
这将允许您验证空的字段,并尝试使用过滤器,这可以帮助您在没有任何循环的情况下执行此操作。
更多信息filter
$('#sender_container').on('submit',function(e)
{
e.preventDefault();
validate();
});
function validate()
{
$('#sender_container > input[type="text"]')
.removeClass('error')
.filter(function() {
// Remove error classes. Filter
return !$.trim(this.value);
})
.addClass('error');
}
.error {
border: 1px solid red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form method="post" id="sender_container">
<input type="text" name="name[]" />
<input type="text" name="name[]" />
<input type="text" name="name[]" />
<input type="text" name="name[]" />
<input type="text" name="name[]" />
<input type="submit" name="submit" />
</form>