选中复选框,选中复选框

复选框

我有这些复选框。 它们对应于人们可以工作的日子。 该系统将用于创建“工作计划”。 但是,当老板检查一个复选框(让人们在某一天工作)时,它应该改为选择框,以便老板可以告诉人们将在哪里工作。

复选框以这种方式获取其名称: {UserID}_[] 。 复选框的值对应于星期几(星期一 – > 0,星期二 – > 1,星期三 – > 2等)。 选择框以这种方式生成: {UserID}_select_[]

我尝试使用以下类型的jquery脚本来实现此function:

  var userList = ; function swapInput(obj) { for (var i in obj) { $(document).ready(function() { $("input[name='" + obj[i] + "_[]']").change(function() { if ($(this).prop('checked')) { $(this).hide(); $('input[name="' + obj[i] + '_select_['$(this).val()']"]').show(); } } } } } swapInput(userList);  

但是,我对jquery很新,所以我可能需要一些帮助。 我从数据库中检索一个php数组,以获取我们有可用性的所有用户ID。 这个转换为jquery变量。 我尝试遍历它以获取每个ID并创建一行代码来隐藏复选框。 虽然..它不起作用..一如既往……

当我var_dump userIdList php变量时,这是我的结果:

 array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(4) } 

这意味着用户ID分别为1,2和4.但是谁可以帮助我使用jquery部分?

附加一个超级简单的jquery代码到演示显示/隐藏选择时切换复选框。 注意我使用id而不是name 。 其他几件事情要考虑:

  • .change更改为.change

  • 在for循环之外移动$(document).ready(function() ,它应该只运行一次。

 $("#check").click(function(e) { if ($(this).prop("checked")) { $(this).hide(); $("#select").show(); } }) 
 #select { display: none; } 
       JS Bin