使用jQuery获取元素的HTML标记属性

时间:2012-03-16 07:38:17

标签: jquery html

如果他们选择了多个COP1000,我将如何提醒用户;如果用户选择了多个COP 2830,我将如何提醒用户。此时它会通知用户他们是否选择了多个班级。

<script type="text/javascript" charset="utf-8">
var p = 0;
$(document).ready(function () {
    $('input:checkbox').click(function () {
        var COP1000 = $(this).attr('data');
        if ($('input:checkbox:is_checked').attr()) {
            p++;
        }
        if (p >= 2) {
            alert('You can only select this class once');
            return false;
        }
    });
});
</script>

下面是复选框,数据是类的名称

<input name="class[]" data="COP1000" value="<tr><td>COP1000 <td>8:00AM-9:00AM 
</td><td>MWF </td><td>Sanford </td><td>3</td></tr>" type="checkbox" class="auto-
style88"/>
<input name="class[]" data="COP1000" value="<tr><td>COP1000 <td>11:30AM-12:00PM
</td><td>TTH </td><td>Altamonte </td><td>3</td></tr>" type="checkbox" class="auto-
style88" />

<input name="class[]" data="COP2830" value="<tr><td>COP2830 <td>11:00AM-12:00PM 
</td><td>MWF </td><td>Sanford </td><td>3</td></tr>" type="checkbox" class="auto-
style88"/>
<input name="class[]" data="COP2830" value="<tr><td>COP2830 <td>6:00PM-8:45PM 
</td><td>T </td><td>Altamonte </td><td>3</td></tr>" type="checkbox" class="auto-
style88"/>

2 个答案:

答案 0 :(得分:1)

这应该有效:

$(document).ready(function() {
    $('input:checkbox').click(function() {

        var COP1000Counter = 0;
        var COP2830Counter = 0;


        $('input:checkbox:checked').each(function(){
            if($(this).attr('data') == "COP1000")
            {
                COP1000Counter++;
            } else if ($(this).attr('data') == "COP2830"){
                COP2830Counter++;
            }
        });

        if (COP1000Counter > 1 || COP2830Counter > 1) {
            alert('You can only select this class once');
            return false;
        }
    });
});

通过添加更多计数器或if if其他数字,您可以使用所有类别和允许出现的次数

Fiddle

答案 1 :(得分:0)

在这里,请查看此fiddle

虽然我觉得我的解决方案相当粗糙,仍然可以改进。 但这是一个开始。

希望它有所帮助。 :)