从表单提交中排除单选按钮,而不禁用它们

时间:2012-05-12 18:17:42

标签: html forms radio-button

我正在使用一些单选按钮来影响jQuery小部件的行为状态。 该窗口小部件可以在表单中使用,但由于这些无线电不包含任何实际数据,我不希望它们向服务器提交噪声,或者导致命名冲突给任何将在其表单中使用窗口小部件的人。

以下是两个可能的解决方案,但尚未令人满意:

  • 删除name属性:似乎对其他输入工作正常,但将我的无线电转为复选框:它会杀死它们之间的链接,因此选择其中一个不会取消选择其他输入。是否有HTML方式(即Javascript事件除外)在没有name属性的情况下绑定它们?
  • 禁用输入:正如所料,未提交任何内容,但无线电变为灰色且无法点击。有没有什么方法可以保持可点击但不提交,比如在提交时禁用?

我希望尽可能地寻找跨浏览器解决方案。

1 个答案:

答案 0 :(得分:1)

尝试在提交前调用一个函数,禁用单选按钮。

function disableBtn() {
  document.getElementById('idbtn1').setAttribute('disabled', 'disabled');
  document.getElementById('idbtn2').setAttribute('disabled', 'disabled');
  return true;
}

然后,形式:

<form action="file" method="post" onsubmit="return disableBtn()">