【发布时间】:2016-01-19 16:20:36
【问题描述】:
我目前正在使用 php 显示一列带编号的复选框,一个用于给定月份的每一天,在每个复选框旁边我显示一个文本框以输入给定选中日期的可选注释。我希望通过基于相邻复选框状态显示/隐藏文本框或切换其禁用属性来限制用户仅在检查的天数内输入注释。我使用 php 循环来显示每天的表单元素,复选框被命名为 box[],文本框被命名为 cmets[]。我知道我可以在将记录插入数据库之前丢弃未使用的输入,但我不想让用户留下这样的印象,即他们可以放置将在未选择的日子保留的注释。
while ($day_count <= $num_days){
echo"<input name='boxes[]' type='checkbox' value='".$prov_id."_".$day_count."' />".$day_count."</input>";
echo "Comment: <input name='comments[]' type='text' size='15' maxlength='255' />";
echo "<br>";
$day_count++;
}
【问题讨论】:
-
具体有什么问题或疑问?
-
到目前为止,我的最佳尝试没有产生在未选中随附复选框时禁用的文本框。以下是最后尝试的方法:
-
while ($day_count <= $num_days){ // echo "<input type='checkbox' name='boxes[]' id='boxes[]' value='.$day_count.'></input> "; echo" <input type='checkbox' name='boxes[]' id='boxes[]' value='.$day_count.'></input> <input type='text' id='txt1' name='comments[]'> <script type='javascript'> $('#boxes[]').change(function(){ if($(this).is(':checked')) $(this).next(':text').attr('disabled','true'); else $(this).next(':text').removeAttr('disabled'); }); </script>"; echo "<br>"; $day_count++; }
标签: javascript php jquery css checkbox