如何在textarea更改时添加'required'属性?

Mac*_*ler 2 forms jquery html5 attributes required

我需要在textarea(orderComments)中键入文本的条件下将所需属性添加到html select(toDept).以下是我的代码...我错过了什么?我是否需要在更改事件或其他事件上运行我的jquery?

    $(document).ready(function() {
          if ($('#textareaId').val() != '') {
            $("#selectId").attr('required', true);
          }
        }
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<textarea id="textareaId"></textarea>

<select id="selectId">
  <option value=""></option>
  <option value="opt1">opt1</option>
</select>
Run Code Online (Sandbox Code Playgroud)

谢谢你的时间!

pow*_*uoy 9

您需要在textarea更改时运行代码:

var textarea = $('#textareaId');
var select = $('#selectId');

var addOrRemoveRequiredAttribute = function () {
    if (textarea.val().length) {
        select.attr('required', true);
    }
    else {
        select.attr('required', false);
    }
};

// Run now
addOrRemoveRequiredAttribute();

// And when textarea changes
textarea.on('change', addOrRemoveRequiredAttribute);
Run Code Online (Sandbox Code Playgroud)