将javascript div id设置为递增变量
我有一个PHP循环表单,我想通过javascript提交。问题在于,每个ID似乎都需要各自独立的javascript提交代码 PHP代码:将javascript div id设置为递增变量,javascript,php,jquery,variables,auto-increment,Javascript,Php,Jquery,Variables,Auto Increment,我有一个PHP循环表单,我想通过javascript提交。问题在于,每个ID似乎都需要各自独立的javascript提交代码 PHP代码: $i = 0; while ($i < $num) { $j = $i + 1; echo "<form id='form".$j."' name='form3' method='post' action='post.php'> <input type ='checkbox' name='box1' value
$i = 0;
while ($i < $num) {
$j = $i + 1;
echo "<form id='form".$j."' name='form3' method='post' action='post.php'>
<input type ='checkbox' name='box1' value = 'useless' > Useless</input>
<input type='submit' name= 'submit' id='submit' value='Submit' />
</form>";
$i++;
}
$i=0;
而($i<$num){
$j=$i+1;
回声“
无用的
";
$i++;
}
无法工作的Javascript:
var x = 2;
var y = '<?php echo $num; ?>';
while (x <= y) {
$(document).ready(function () {
$("#form" + x).on("change", "input:checkbox", function () {
$("#form" + x).submit();
});
});
x++;
var x=2;
变量y=“”;
虽然(x由于您正在为每个表单创建一个提交按钮,但您似乎希望在更改复选框时触发提交,因此更简单的解决方案可能是:
$('[name=“box1”]')。更改(函数(){
$(this.next()。单击();
});
//这只是为了证明所有的表格不会在回应您的评论时立即提交
$('form')。提交(函数(e){
e、 预防默认值();
$('#result').append('id'+$(this.attr('id')+'
')提交的表单);
});
无用的
无用的
无用的
你需要在while循环中增加x,如果你用控制台记录它,它是一个无限循环,但是在js中的相同元素上。php?你如何调用js函数?预期结果是什么?你当前的结果是什么?但是它会提交所有循环表单,这不是提交的唯一值。有一个隐藏的变量值不是发布时,hat将只更新提交表单的mysql列。如果我按照您的建议执行,它将更新所有表单(27),而不仅仅是一个。@Celeste这是不正确的,提交按钮位于表单内部,当单击该按钮时,它将仅提交父表单,而不会提交其他26个表单。我更新了我的答案以证明这一点。提交按钮没有触发javascript,而是将其发送到post。php@Celeste“提交”按钮不可用触发什么javascript?在您最初的尝试中,您有$(“#form”+x).submit();
,它将提交本机表单,而本机表单正是此代码所做的。您试图触发什么javascript?u提供给我的javascript。我将原始php代码与以下代码一起使用:$(document).ready(函数(){$('[name=“box1”])).change(函数(){$(this).next().click();});});