Php jquery.append()不适用于我的html

Php jquery.append()不适用于我的html,php,jquery,html,Php,Jquery,Html,我有一个程序,它使用jquery将输入(type=“hidden”)附加到html中,这样当我单击submit按钮时,它会将值传递给php文件,我可以处理它。但是,似乎隐藏类型并没有真正附加到html中,也没有传递到php文件中。我已经使用method=“get”查看地址栏中的值,并使用print\r查看捕获的值,但是没有任何内容。为了检查我的表单是否真的传递了一个值,我添加了一个 <input type="hidden" name="absent[]" value="testing" /

我有一个程序,它使用jquery将输入(
type=“hidden”
)附加到html中,这样当我单击submit按钮时,它会将值传递给php文件,我可以处理它。但是,似乎隐藏类型并没有真正附加到html中,也没有传递到php文件中。我已经使用
method=“get”
查看地址栏中的值,并使用
print\r
查看捕获的值,但是没有任何内容。为了检查我的表单是否真的传递了一个值,我添加了一个

<input type="hidden" name="absent[]" value="testing" />

在HTML中,传递了值,但jquery中的值没有传递

这是我的档案: jquery:

$(函数(){
$(“td”)。单击(函数(){
if($(this).hasClass(“on”))
{
警报(“已标记为不存在”);
}
其他的
{
$(此).addClass(“on”);
var currentCellText=$(this.text();
var temp=$(this.attr('id');
$(“#收集”).append(“+currentCellText);
警报(临时);
}
});
$(“#clicky”)。单击(函数(){
$(“td”).removeClass(“on”);
$(“#收集”)。文本(“”);
$(“#收集”)。附加(“缺席者:
”) 警报(临时); }); });
以下是html部分:

<?php
session_start();
include 'connectdb.php';
$classID = $_SESSION['csID'];

$classQry = "SELECT e.csID, c.subjCode, c.section, b.subj_name, e.studentID, CONCAT(s.lname, ', ' , s.fname)name
FROM ENROLLMENT e, CLASS_SCHEDULE c, STUDENT s, SUBJECT b
WHERE e.csID = c.csID
AND c.csID = '" . $classID . "'
AND c.subjCode = b.subjCode
AND e.studentID = s.studentID
ORDER BY e.sort;";

$doClassQry = mysql_query($classQry);

echo "<table id='tableone'>";
    while($x = mysql_fetch_array($doClassQry))
    {
        $subject = $x['subj_name'];
        $subjCode = $x['subjCode'];
        $section = $x['section'];
        $studentArr[] = $x['name'];
        $studentID[] = $x['studentID'];


    }
    echo "<thead>";
    echo "<tr><th colspan = 7>" . "This is your class: " . $subjCode . " " . $section . " : " . $subject . "</th></tr>";
    echo "</thead>";
    echo "<tbody>";
    echo "<tr>";        
    for($i = 0; $i < mysql_num_rows($doClassQry); $i++)
    {
        if($i % 7 == 0)
        {               
            echo "</tr><tr><td id = '". $studentID[$i] . " '>" . $studentArr[$i] . "</td>";             
        }
        else
        {
            echo "<td id = '". $studentID[$i] . " '>" . $studentArr[$i] . "</td>";
        }

    }
    echo "</tr>";       
    echo "</tbody>";
echo "</table>";
?>

id为
collect
的元素是否在表单中?这是必须的

$("<input type='hidden' name='absent[]' />").val(temp)
                                            .appendTo('form[name="save"]');
$('#collect').append(currentCellText);
$(“”).val(临时)
.appendTo('form[name=“save”]”);
$('#collect')。追加(currentCellText);

哇,我完全错过了。id集合不在表单中。哇,真的!我已经用这个工作了好几个小时了。非常感谢你指出这一点。不过,很抱歉,这里的新手jquery用户:()()()())是的,我使用了一个隐藏元素,因为只有当我单击。这样,我将这些隐藏元素的id推送到一个数组中,我将在php文件中处理这个数组。除了使用表单技术之外,我不知道其他方法可以将数组传递给php。@user1056998我明白了,添加更多也可以。我会更新的。谢谢更新,现在更清晰了。顺便问一下,是否有其他方法可以将隐藏元素的id放入jquery数组中,以便在单击submit按钮后将其提交到表单?我只是好奇是否有其他方法可以让我学习新技术。提前感谢:))我想您可以将其保存在javascript变量中,然后在通过AJAX发布时将其序列化。这种方法同样有效。
<form name="save" action="saveTest.php" method="post">
<div id="submitt">
    <input type="hidden" name="absent[]" value="testing"/>
    <input type="submit" value="submit"/>
</div>
</form>
<?php

$absent  = $_POST['absent'];
//echo "absnt" . $absent[] . "<br>";
echo count($absent) . "<br>";
//print_r($_POST) . "<br>";
?>
$("<input type='hidden' name='absent[]' />").val(temp)
                                            .appendTo('form[name="save"]');
$('#collect').append(currentCellText);