如何根据特定的条件启用和禁用提交按钮

时间:2016-10-25 13:45:22

标签: javascript html

我有一个代码,我通过使用以下代码调用函数来提交

<input type=submit value=SUBMIT onclick=report_submit()>

我希望最初禁用该按钮,并且仅在我的所有输入都不为空时才启用。

提交表单后,我希望再次禁用该按钮,以便不会发生重复插入。

我已尝试过Stack Overflow中的其他示例,但要么是永久启用,要么已禁用。

2 个答案:

答案 0 :(得分:1)

当用户键入或更改选择它时,请检查表单以查看是否所有输入都有值,如果没有,则再次禁用该按钮。如果对Array.prototype.slice()感兴趣。

&#13;
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form name="form" method="post">
  <input id="text" name="text" type="text" />
  <select id="options" name="options">
    <option value></option>
    <option value="1">Option 1</option>
  </select>
  <input type="submit" id="disabled" disabled="disabled" />
</form>
&#13;
@foreach
&#13;
&#13;
&#13;

答案 1 :(得分:1)

kodecount提醒我,这个基本功能不是100%跨浏览器(即Safari见this)。

为什么不在每个输入上使用required属性并调用它。只要您的required输入没有任何值,您就可以点击该提交按钮一千次,并且在required的每个输入都有值之前,永远不会允许它做任何事情。没有JS,没有CSS,只有HTML。

&#13;
&#13;
<form id='f1' onsubmit='nullCheck()'>
  <input name='i1' required>
  <br/>
  <input name='i2' required>
  <br/>
  <input name='i3' required>
  <br/>
  <input name='i4' required>
  <br/>
  <input type='submit'>
</form>
<form id='f2' onsubmit='nullCheck()'>
  <input name='i5' required>
  <br/>
  <input name='i6' required>
  <br/>
  <input type='submit'>
</form>
&#13;
&#13;
&#13;