使用Jquery将属性Required添加到Razor应用程序中的输入

时间:2013-11-14 08:04:47

标签: javascript jquery asp.net html5 asp.net-mvc-4

我有一个asp.net mvc4应用程序,我有这个表单:

  <form method="Post" action="/User/Validate_Expert_Decision" target="_parent">
      <span>
          <b style="color:red" >Votre avis</b>
          <br />
          <br />

          <input type="radio" name="avis" value="1" checked>Validé &nbsp &nbsp &nbsp &nbsp
          <input type="radio" name="avis" value="2">Refusé &nbsp &nbsp &nbsp &nbsp
          <input type="radio" name="avis" value="3">Demande de spécification &nbsp &nbsp &nbsp &nbsp
          <input type="radio" name="avis" value="4">Demande d'analyse 
          <br />
          <br />
          <br />

      </span>
    <span>
        <b style="color:red" >
        Votre justification * 
        <b />

          <br />
          <br />
      <textarea rows="16" cols="75" name="justification"></textarea>
    </span>

    <input type="hidden" name="elem" value="0"  id="elem"/>
    <p> 
      <input type="submit" name="submit">
      <input type="button" name="cancel" value="Annuler" onClick="closebox()">
    </p>
  </form>

当单选按钮取2,3或4作为值时,我需要将属性required添加到textarea justification,即仅justification输入的第一个值'需要。

那么,我该怎么做呢?

2 个答案:

答案 0 :(得分:1)

<script>
    $(document).ready(function () {
        $('input[name="avis"]').change(function () {
            var t = $('textarea[name="justification"]');

            if ($(this).val() != 1)
                t.attr('required', 'required');
            else
                t.removeAttr('required');
        })
    })
</script>

答案 1 :(得分:1)

有这样的吗?

$("input[name='avis']").on("change", function () {
    var value = $(this).val();
    $('td[name=justification]').prop("required", value != "1");
});