【问题标题】:Undisable certain elements inside disabled fieldset取消禁用字段集中的某些元素
【发布时间】:2016-05-13 20:00:28
【问题描述】:

当父 fieldset 被禁用时,是否有办法(例如元素上的属性)“禁用”特定元素?最好没有任何 JavaScript。如果不是,那么禁用整个表单(具有特定例外)的好习惯是什么?

<fieldset disabled>
  Name: <input type="text"><br>

  <!-- Email shouldn't be disabled -->
  Email: <input type="text"><br>

  <!-- more fields ... -->
</fieldset>

【问题讨论】:

  • 我认为这是不可能的。 &lt;fieldset disabled&gt; 用于禁用所有字段,除非给定条件。例如,如果要删除名称文本框的禁用,则不要在字段集中禁用并使用 &lt;script&gt; 将文本框的其余部分添加为禁用。 只是一个建议。

标签: html disabled-input


【解决方案1】:

将您的输入放在&lt;legend&gt; 元素中:

<fieldset disabled>
  <legend>
    <label>Email: <input></label>
  </legend>

  <label>Name: <input></label>
  <!-- more fields ... -->
</fieldset>

【讨论】:

    【解决方案2】:

    亲爱的,用这个例子来实现你的目标。

     $(document).ready(function () {
                $('#form :input').prop('disabled', true);
                $("#btn1").prop('disabled', false);
            })
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <fieldset id="form">
    
      <legend>Personalia:</legend>
      Name: <input type="text" /><br />
      Email: <input type="text" /><br />
      Date of birth: <input type="text" />
    
      <input id="btn1" type="button" value="See More (Enable this!!) " onclick="ButtonClicked1()" />
      Somethingelse: <input type="text" />
     <input type="button" value="View Details " onclick="ButtonClicked2()"/> 
    
      </fieldset>

    【讨论】:

    • 感谢您的回答,但我想不使用 JavaScript。
    • 这是一个合法的答案!尽管 OP 正在寻找好的做法,但他没有指定它不必是 javascript。这种黑客行为在多大程度上是好的做法是在程度上衡量的,而不是绝对的。
    • 这是&lt;button&gt;元素的答案:stackoverflow.com/a/55155649/2444959
    猜你喜欢
    • 2014-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-11
    • 1970-01-01
    • 2021-01-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多