select with jquery中的removeAttr

时间:2018-03-02 09:40:30

标签: jquery html

我知道这经常被问到,但我不会问我是否会在那里找到答案。我有一个非常基本的场景:

$(document).ready(function() {
    $('.hideFirst').hide();
    $('#pkw_neu').on("change", function() {
        if($(this).val() == 1) {
            $('.hideFirst').fadeIn();
            $('#eigenanteil').attr("required", "required");
        }
        else {
            $('.hideFirst').fadeOut();
            $('#eigenanteil').removeAttr("required");
            // $('#eigenanteil').prop("required", false);
        }
    });
});

如您所见,我只想拥有一个字段required,如果之前另一个字段设置为是(1)。事件正在触发(淡入淡出) - 但由于一些奇怪的原因,当我切换回no(0)时,我总是以required=""(显然被解析为required="required")结束。 / p>

使用IE 7

<select name="pkw_neu" class="form-control" id="pkw_neu">
    <option value=""></option>
    <option value="1">Ja</option>
    <option value="0">Nein</option>
</select>

<select name="eigenanteil" class="form-control" id="eigenanteil">
    <option value=""></option>
    <option value="1">Ja</option>
    <option value="0">Nein</option>
</select>

任何变通方法或想法?

3 个答案:

答案 0 :(得分:0)

试试这个

$("input").prop('required',true);

答案 1 :(得分:0)

您应该将其设置为false:

$('#eigenanteil').prop('required',false);

答案 2 :(得分:0)

简单的

将输入设为false(即)$("input").prop('required',false);

由于