Jquery:单击时在隐藏字段上追加/删除项目

时间:2012-03-11 16:11:35

标签: jquery html css

我有一个程序,允许您在单击一次网格时记录缺席。当您第二次单击它时,它会将网格记录为延迟。当您第三次单击它时,状态将恢复为原始状态。我可以将缺席追加到一个隐藏的字段,以便在另一个php上发布。但是,我似乎无法将已故的记录追加到另一个隐藏的字段中。当我查看我的其他php文件时,即使它应该已从列表中删除,仍会记录缺席。最糟糕的是,没有任何东西被附加到已故隐藏的领域。

我非常需要帮助。另外,我希望你能解释我在哪里犯了错,这样我才能理解代码。谢谢!

以下是代码:http://jsfiddle.net/Ms6FP/2/

2 个答案:

答案 0 :(得分:0)

更好的方法是在提交时创建隐藏字段的内容。

假设您的提交按钮被赋予id mySubmitButton并且您有一个id为lateHiddenField的隐藏字段,您可以执行以下操作:

$("#mySubmitButton").submit(function(){
  $(".late").each(function(index,value){  //iterate through each late student
    //append the late student's name
    $("#lateHiddenField").text($("#lateHiddenField").text()+value.text()+"\n");
  })

  //do the same for the absent students
}

优点是:

  • 加快处理速度 - 只运行一次
  • 更简单的代码 - 你没有 修改任何事情

答案 1 :(得分:0)

我猜你试图通过不同的点击状态给出迟到的学生总数。

在这种情况下here是一个有效的解决方案

略微改变标记,使其更具操控性

<div id="collect1">
    late: <span>0</span>
</div>

然后,计算已经维护的数组的长度并更新

$("#collect1").children("span").html(late.length);