在 JQuery 中禁用/启用多个输入的问题

发布于 2024-11-28 03:11:13 字数 667 浏览 2 评论 0原文

我有一个带有“OR”条件的表单,可以调暗/禁用 3 个输入字段或 1 个输入字段,具体取决于每个输入字段中是否有条目。

我遇到了很多与此不一致的结果的麻烦 - 即当用户通过输入进行选项卡时 - 并且确实需要一些帮助。

有问题的代码是:

$(document).ready(function() {

  $("#firstInitial,#lastName,#memberNo").blur(function() {
      if ($(this).val() != '')
          $("#datepicker").attr("disabled", "disabled").addClass("disabledStyle").val('');            
      else
          $("#datepicker").attr("disabled", "").removeClass("disabledStyle");

  });

});

当firstInitial、lastName 或memberNo 或这三者的任意组合中存在条目时,我试图调暗/禁用日期选择器字段,如果这些条目中删除了条目,则不可禁用日期选择器。正在发生的事情是通过这些选项卡破坏一切并导致不一致的结果。

我可以尝试其他技术吗?

谢谢。

I have a form with an "OR" condition that either dims/disables 3 input fields or 1 input field depending on if there are entries in each.

I'm having a lot of trouble with inconsistent results with this--namely when the user tabs through inputs--and could really use some help.

The code that's problematic is:

$(document).ready(function() {

  $("#firstInitial,#lastName,#memberNo").blur(function() {
      if ($(this).val() != '')
          $("#datepicker").attr("disabled", "disabled").addClass("disabledStyle").val('');            
      else
          $("#datepicker").attr("disabled", "").removeClass("disabledStyle");

  });

});

I'm trying to dim/disable a datepicker field when there's an entry in either firstInitial, lastName, or memberNo, or any combination of those three--and undisable datepicker if entries are removed in these. What's happening is tabbing through these breaks everything and causes inconsistent results.

Is there another technique I could try?

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

余生共白头 2024-12-05 03:11:13

我不确定我是否理解了您的所有问题,但如果您使用 class="someName" 而不是 id="someName" 来命名 html 元素,那么您就可以访问“.” jQuery 语法。

$(".someClass").someMethod() 将该方法应用于在其属性中声明此类的所有元素。

我不确定它是否是原子的......

I'm not sure I understood all of your question, but if you name your html elements using class="someName" instead of id="someName", then you have access to the "." JQuery syntax.

$(".someClass").someMethod() will apply the method to all elements declaring this class in their attributes.

I'm not certain if it's atomic though...

随心而道 2024-12-05 03:11:13

如果您在 FireFox 中遇到问题,以下内容可能会有所帮助。 (提示:设置autocomplete=off
Firefox 的错误 - 输入的禁用属性未重置刷新时

If you're seeing problems in FireFox, the following may be helpful. (hint: set autocomplete=off)
Bug With Firefox - Disabled Attribute of Input Not Resetting When Refreshing

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文