Php 动态添加的输入字段通过验证,无法提交到其他页面
我是初学者,在动态添加的输入字段中,当通过验证并提交到另一个页面时,我无法提交 遵循脚本示例Php 动态添加的输入字段通过验证,无法提交到其他页面,php,dynamic,jquery-validate,submit-button,Php,Dynamic,Jquery Validate,Submit Button,我是初学者,在动态添加的输入字段中,当通过验证并提交到另一个页面时,我无法提交 遵循脚本示例 <script src="js/jquery-3.1.1.min.js"></script> <script src="js/jquery.validate.js"></script> <script type="text/javascript"> $(document).ready(function() { var nu
<script src="js/jquery-3.1.1.min.js"></script>
<script src="js/jquery.validate.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var numberIncr = 1; // used to increment the name for the inputs
function addInput() {
$('#inputs').append($('<input class="comment" name="name'+numberIncr+'" />'));
numberIncr++;
}
$('form.commentForm').on('submit', function(event) {
// adding rules for inputs with class 'comment'
$('input.comment').each(function() {
$(this).rules("add",
{
required: true
})
});
// prevent default submit action
event.preventDefault();
// test if form is valid
if($('form.commentForm').validate().form()) {
console.log("validates");
} else {
console.log("does not validate");
}
})
// set handler for addInput button click
$("#addInput").on('click', addInput);
// initialize the validator
$('form.commentForm').validate();
});
</script>
$(文档).ready(函数(){
var numberIncr=1;//用于增加输入的名称
函数addInput(){
$('#inputs')。追加($('');
numberIncr++;
}
$('form.commentForm')。关于('submit',函数(事件){
//为类为“comment”的输入添加规则
$('input.comment')。每个(函数(){
$(此).rules(“添加”,
{
必填项:true
})
});
//防止默认提交操作
event.preventDefault();
//测试表单是否有效
if($('form.commentForm').validate().form()){
console.log(“验证”);
}否则{
console.log(“不验证”);
}
})
//设置addInput按钮的处理程序单击
$(“#添加”)。在('单击',添加“);
//初始化验证器
$('form.commentForm').validate();
});
通过验证后,单击提交到操作=“/action\u page\u post.php”
和HTML代码
<form class="commentForm" method="get" action="/action_page_post.ph">
<div>
<p id="inputs">
<input class="comment" name="name0" />
</p>
<input class="submit" type="submit" value="Submit" />
<input type="button" value="add" id="addInput" />
</div>
</form>
我所做的更改
- 将('submit')上的
更改为
submitbutton.onclick
- 添加了
$('.commentForm').submit()验证为真时执行的if条件内的代码>
event.preventDefault()
,它将阻止表单的默认行为,因此不会转到下一页。因此,您必须使用$(form).submit()手动提交表单代码>
下面的代码可以在普通页面上运行,但不能在SO代码段上运行
$(文档).ready(函数(){
var numberIncr=1;//用于增加输入的名称
函数addInput(){
$('#inputs')。追加($('');
numberIncr++;
}
$('input.submit')。单击(函数(事件){
//为类为“comment”的输入添加规则
$('input.comment')。每个(函数(){
$(此).rules(“添加”,
{
必填项:true
});
});
//防止默认提交操作
event.preventDefault();
//测试表单是否有效
if($('form.commentForm').validate().form()){
console.log(“验证”);
$('.commentForm').submit();
}否则{
console.log(“不验证”);
}
})
//设置addInput按钮的处理程序单击
$(“#添加”)。在('单击',添加“);
//初始化验证器
$('form.commentForm').validate();
});代码>
我认为action有问题……请正确检查您的文件名,它将是action\u page\u post.php而不是。ph非常感谢!嗯。谢谢@Sparky,这是个打字错误。更正。