我使用像这样的jquery动态地将文本框添加到我的表单:
$(document).ready(function(){
var i = 1;
var j = 1;
$('#add_q').click(function() {
$('<div class="d' + i + '" class="fielddiv"><h2>Domanda(<a href="javascript:;" class="remove_question" todel="d' + i + '">x</a>)</h2><div class="row"><div class="span7"><input type="text" class="field input-xxlarge" name="questions[]" /></div> <div class="span3"><label class="checkbox"> <input type="checkbox" name="rm' + i + '" value="1"> Risposte multiple?</label></div></div><div id="answers_' + i + '" ></div><hr> <a href="javascript:;" class="add_a" qid="answers_' + i + '">Aggiungi risposta</a></div>').fadeIn('slow').appendTo('.inputs');
i++;
});
$(document).on('click', '.add_a', function(event) {
$('<div class="a' + j + ' dashForm"><input type="text" class="field input-xlarge" placeholder="risposta" name="a_' + $(this).attr('qid') + '[]" /></div>').fadeIn('slow').appendTo('#'+$(this).attr('qid'));
j++;
});
$(document).on('click', '.remove_question', function(event) {
$('.' + $(this).attr('todel')).remove();
});
});
正在使用示例 here。
我需要检查在发布表单之前是否至少有一个文本框是空的,主要是因为当我稍后使用php检查它是否有错误时,用户必须返回到表单并且必须启动一遍又一遍(这些字段在返回时会消失,因为它们是动态生成的)。有没有办法在jquery上检查这个用户端?
答案 0 :(得分:0)
当然可以。
只需使用$("input[type=text]").each()
并检查每个文字的值是否为空,一旦匹配,请提交表单。
为表单分配一个id,如下所示:
<form id="myForm" method="POST">
然后,在jQuery中,使用
$("#myForm").submit(function(e) {
// Check textboxes
if(!ok) {
// Stop submit
e.preventDefault();
}
});
这是Sample