Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/248.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通知-登记表3单选按钮_Javascript_Php_Jquery_Forms_Codeigniter - Fatal编程技术网

Javascript 通知-登记表3单选按钮

Javascript 通知-登记表3单选按钮,javascript,php,jquery,forms,codeigniter,Javascript,Php,Jquery,Forms,Codeigniter,因此,我有一个表单,其中包含一个部分,用户必须选择是否要注册一个每天举行3次的会话。问题是,对于任何给定的课程,上午、中午和下午只有5名申请人可以报名。因此,这是一场参赛比赛。这是表格部分 对于如何确定某一特定课程的注册是否关闭,我感到困惑。也就是说,如果表单已填充且4人已注册会话X。同时,其他一些用户注册了X,该会话现在关闭。第一个用户可能认为他仍然可以申请,因为他的表单上这么说。要禁用会话,必须禁用单选按钮,如下图中的“8月3日星期日晚餐” 我正在考虑使用jQueryAjax以10秒的间隔

因此,我有一个表单,其中包含一个部分,用户必须选择是否要注册一个每天举行3次的会话。问题是,对于任何给定的课程,上午、中午和下午只有5名申请人可以报名。因此,这是一场参赛比赛。这是表格部分

对于如何确定某一特定课程的注册是否关闭,我感到困惑。也就是说,如果表单已填充且4人已注册会话X。同时,其他一些用户注册了X,该会话现在关闭。第一个用户可能认为他仍然可以申请,因为他的表单上这么说。要禁用会话,必须禁用单选按钮,如下图中的“8月3日星期日晚餐”

我正在考虑使用jQueryAjax以10秒的间隔进行更新。但这提出了另一个问题。响应将删除用户迄今为止所做的任何选择。这有点像亚马逊管理“剩余5项”的方式。我以前从未做过这样的事。我使用的是codeigniter php框架,jQuery1.8.2


有什么想法吗?

除非这个地方非常受欢迎,否则你可能会试图解释一些永远不会发生的事情(没关系)。只要显示一个错误(“不再可用”)并让他们在发生冲突时重试就足够了。但是,投票也应该起作用;只需禁用相应的收音机,即可不重置整个表单。伪代码:

<input type="radio" class="reservation" name="1-1-2014-morning">
<input type="radio" class="reservation" name="1-1-2014-afternoon">
<input type="radio" class="reservation" name="1-1-2014-evening">

如果只更新需要禁用的单选按钮,则只有在用户尝试选择同时使用的单选按钮时,该按钮才应清除。另一方面,您可能希望在禁用时添加一个隐藏的输入,以便它仍然被提交。
var reservations = $('.reservation');
$.ajax({
    type:'get',
    url: 'checkdates',
    success: function(response){
        if(response){
            $(reservations).each(function(){
                if($.inArray(this.name, response.dates)){
                    $(this).attr('disabled', true);
                }
            });
        }
    }
});