7

我有一个可以出现在不同页面上的表单,并且根据情况,这些字段并不总是必需的。

我有隐藏 div 的代码,但不再需要输入字段。使用 HTML5 必需属性。无法使代码正常工作。代码如下:

$('#detailssame').click(function() {
    if($(this).is(':checked')) {
        $(\"#detailssamehide\").hide();
    } else {
        $(\"#detailssamehide\").show();
    }               
});
$('.fullboxform input[type=text], .fullboxform select').each(function() {
            $(this).removeAttr('required');
});

非常感谢所有帮助。

原来上面的代码确实可以正常工作,但可以使用 prop 提供替代答案

4

2 回答 2

8

尝试使用prop()函数来设置 HTML5 属性。

$(function () {
    $('#detailssame').click(function() {
        var checked = $(this).is(':checked');
        if(checked) {
            $("#detailssamehide").hide();
        } else {
            $("#detailssamehide").show();
        }     
        $('.fullboxform input[type=text], .fullboxform select').each(function() {
            $(this).prop('required', !checked);
        });
    });
});

http://jsfiddle.net/ThsXU/

于 2013-02-15T02:32:20.430 回答
1

删除反斜杠足以让我以所需的效果运行您的代码。

于 2013-02-15T02:37:00.203 回答