【问题标题】:Jquery changes textbox border but only onceJquery更改文本框边框但只有一次
【发布时间】:2014-08-20 20:48:00
【问题描述】:

我尝试使用普通 jquery 添加验证,并在上半年成功。当我提交空白字段时,文本框边框变为红色,但是当我填充值并再次单击按钮时,边框不会变为新颜色。请在下面找到我的 jQuery 代码:

 if ($.trim($("input[id$='prgIDText']").val()).length < 1) {
            errMsg += "Program ID cannot be blank <br/>";
            $("input[id$='prgIDText']").css("border", "2px solid red");
        }
        else {
            alert($.trim($("input[id$='prgIDText']").val()).length);
            $("input[id$='prgIDText']").css("border", "border:1px solid #CCC");
        }

【问题讨论】:

  • 你能做一个小提琴吗?
  • 您的输入字段是否动态重绘?
  • 没有输入已经存在,它是一个ASP的服务器端控件。
  • 我不知道小提琴是什么..

标签: javascript jquery html css asp.net


【解决方案1】:

您的第二个 CSS 值中有边框。

.css("border", "border:1px solid #CCC");

应该是:

.css("border", "1px solid #CCC");

查看这个有效的 JSFiddle:

http://jsfiddle.net/0jvscr2n/

【讨论】:

  • 这是一个正确的修复。但我建议不要通过 jquery 来选择 css。您应该切换一个处理边框样式的类。
  • 我同意@LaurensKling。使用 css 类可以让您事半功倍。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-16
  • 1970-01-01
  • 1970-01-01
  • 2019-02-15
相关资源
最近更新 更多